Compartilhar via


Precedência do operador (Entity SQL)

Quando uma consulta SQL de entidade tem vários operadores, a precedência do operador determina a sequência na qual as operações são executadas. A ordem de execução pode afetar significativamente o 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 é avaliado antes de um operador com um nível inferior.

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

Quando dois operadores em uma expressão têm o mesmo nível de precedência de operador, eles são avaliados da esquerda para a direita, com base em 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 definida dos operadores em uma consulta. Tudo dentro de parênteses é avaliado primeiro para produzir um único resultado antes que esse resultado possa ser usado por qualquer operador fora dos parênteses. Por exemplo, multiplica e adiciona, mas (x+y)*z adiciona yx e multiplica o resultado por z.xzyx+y*z

Consulte também