Prioridad de los operadores (Entity SQL)
Cuando una consulta Entity SQL tiene múltiples operadores, la prioridad de operador determina la secuencia en que se realiza la operación. 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 |
|
3 |
Multiplicativo |
|
4 |
Sumatorio |
|
5 |
Ordenación |
|
6 |
Igualdad |
|
7 |
AND condicional |
|
8 |
OR condicional |
|
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
multiplicay
porz
y, a continuación, agrega adds x
, pero(x+y)*z
sumax
ay
y, a continuación, multiplica el resultado por z
.