Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL-adatbázis a Microsoft Fabricben
Ha egy összetett kifejezés több operátorral rendelkezik, az operátorok elsőbbsége határozza meg a műveletek sorrendjét. A végrehajtás sorrendje jelentősen befolyásolhatja az eredményként kapott értéket.
Az operátorok elsőbbséget élveznek az alábbi táblázatban. A magasabb szinteken lévő operátorok kiértékelése alacsonyabb szintű operátorok előtt történik. Az alábbi táblázatban az 1 a legmagasabb, a 8 pedig a legalacsonyabb szint.
| Level | Operators |
|---|---|
| 1 | ~ (Bitenkénti NEM) |
| 2 | * (Szorzás), / (osztás), % (Modulus) |
| 3 | + (Pozitív), - (Negatív), + (Összeadás), + (Összefűzés), - (Kivonás), & (Bitwise AND), ^ (Bitwise Exclusive OR), | (Bitenkénti VAGY) |
| 4 | =, >, <, >=, <=, <>, !=, !>, !< (Összehasonlító operátorok) |
| 5 | NOT |
| 6 | AND |
| 7 | ALL, ANY, BETWEEN, IN, LIKE VAGY, SOME |
| 8 | = (Hozzárendelés) |
Ha egy kifejezés két operátora azonos elsőbbséget élvez, a kifejezésben elfoglalt pozíciójuk alapján balról jobbra értékelik őket. Az alábbi SET utasításban használt kifejezésben például a kivonási operátor kiértékelése az összeadási operátor előtt történik.
DECLARE @MyNumber INT;
SET @MyNumber = 4 - 2 + 27;
-- Evaluates to 2 + 27 which yields an expression result of 29.
SELECT @MyNumber;
Zárójelek használatával felülbírálhatja az operátorok definiált elsőbbségét egy kifejezésben. A zárójelen belüli összes érték kiértékelése egyetlen értéket eredményez. Ezt az értéket bármely, a zárójelen kívüli operátor használhatja.
Az alábbi SET utasításban használt kifejezésben például a szorzási operátor elsőbbsége magasabb, mint az összeadási operátor. Először a szorzási műveletet értékeli ki a rendszer; a kifejezés eredménye .13
DECLARE @MyNumber INT;
SET @MyNumber = 2 * 4 + 5;
-- Evaluates to 8 + 5 which yields an expression result of 13.
SELECT @MyNumber;
A következő SET utasításban használt kifejezésben a zárójelek a hozzáadás kiértékelését okozzák először. A kifejezés eredménye .18
DECLARE @MyNumber INT;
SET @MyNumber = 2 * (4 + 5);
-- Evaluates to 2 * 9 which yields an expression result of 18.
SELECT @MyNumber;
Ha egy kifejezés beágyazott zárójelekkel rendelkezik, először a legmélyebb beágyazott kifejezés lesz kiértékelve. Az alábbi példa beágyazott zárójeleket tartalmaz, és a kifejezés 5 - 3 a zárójelek legmélyén beágyazott halmazában található. Ez a kifejezés a 2értéket adja meg. Ezután az összeadási operátor (+) hozzáadja ezt az eredményt 4 , amelynek értéke 6a következő lesz: . Végül a 6 szorzat megszorzódik 2 a kifejezés eredményének eredményével 12.
DECLARE @MyNumber INT;
SET @MyNumber = 2 * (4 + (5 - 3) );
-- Evaluates to 2 * (4 + 2) which then evaluates to 2 * 6, and
-- yields an expression result of 12.
SELECT @MyNumber;
Lásd még:
Logikai operátorok (Transact-SQL)
Operátorok (Transact-SQL)
Beépített függvények (Transact-SQL)