Sdílet prostřednictvím


Priorita operátoru (Entity SQL)

Pokud dotaz Entity SQL obsahuje více operátorů, priorita operátoru určuje posloupnost, ve které se operace provádějí. Pořadí provádění může výrazně ovlivnit výsledek dotazu.

Operátory mají úrovně priority uvedené v následující tabulce. Operátor s vyšší úrovní se vyhodnotí před operátorem s nižší úrovní.

Úroveň Typ operace Operátor
1 Primární . , [] ()
2 Unární ! not
3 Multiplikativní * / %
4 Aditivní + -
5 Objednávání < > <= >=
6 Rovnost = != <>
7 Podmíněný operátor AND and &&
8 Podmíněné OR or &#124;&#124;

Pokud mají dva operátory ve výrazu stejnou úroveň priority operátorů, vyhodnotí se zleva doprava na základě jejich pozice v dotazu. Například x+y-z se vyhodnotí jako (x+y)-z.

Pomocí závorek můžete přepsat definovanou prioritu operátorů v dotazu. Před použitím jakéhokoli operátoru mimo závorky se nejprve vyhodnotí vše v závorkách, aby se vyhodnotil jeden výsledek. Například x+y*z vynásobí yz a pak přičte x, ale (x+y)*z přičte x a y pak vynásobí výsledek .z

Viz také