Compartilhar via


Precedência do operador (Entity SQL)

Quando uma consulta Entity SQL tiver vários operadores, a precedência de operadores determina a sequência na qual as operações são executadas. A ordem de execução pode impactar significativamente no resultado da consulta.

Os níveis de precedência dos operadores são mostrados na tabela a seguir. Um operador com um nível mais alto é avaliada antes de um operador com um nível inferior.

Nível Tipo de operação Operador
1 Primário . , [] ()
2 Unário ! not
3 Multiplicativo * / %
4 Aditiva + -
5 Ordenando < > <= >=
6 Igualitário = != <>
7 AND condicional and &&
8 OR condicional or &#124;&#124;

Quando dois operadores em uma expressão têm o mesmo nível de precedência de operadores, são avaliados esquerda para a direita, com base na sua posição na consulta. Por exemplo, x+y-z é avaliado como (x+y)-z.

Você pode usar parênteses para substituir a precedência de operadores definida em uma consulta. Todos dentro dos parênteses é avaliado primeiro para produzir um único resultado antes que o resultado pode ser usado por qualquer operador fora dos parênteses. Por exemplo, x+y*z multiplica y por z e adiciona x, mas (x+y)*z adiciona x a y e multiplica o resultado por z.

Confira também