Precedencia de operadores (Entity SQL)

Cuando una consulta de Entity SQL tiene varios operadores, la prioridad de operadores determina la secuencia en la que se realizan las operaciones. El orden de ejecución puede afectar de manera significativa al resultado de la consulta.

Los operadores tienen los niveles de prioridad que se muestran en la siguiente tabla. Un operador con un nivel más altos se evalúa antes que un operador con un nivel más bajo.

Nivel Tipo de operación Operador
1 Principal . , [] ()
2 Unario ! not
3 Multiplicativo * / %
4 Aditivo + -
5 Ordenación < > <= >=
6 Igualdad = != <>
7 AND condicional and &&
8 OR condicional or &#124;&#124;

Cuando en una expresión dos operadores tengan el mismo nivel de prioridad de operador, se evalúan de izquierda a derecha en función de su posición dentro de la consulta. Por ejemplo, x+y-z se evalúa como (x+y)-z.

Puede utilizar paréntesis para invalidar la prioridad definida de los operadores en una consulta. Todo lo que está dentro del paréntesis se evalúa en primer lugar para producir un resultado antes de que dicho resultado lo pueda utilizar cualquier otro operador que se encuentre fuera del paréntesis. Por ejemplo, x+y*z multiplica y por z y luego se suma a x, pero (x+y)*z suma x a y y luego multiplica el resultado por z.

Consulte también