运算符优先级 (Entity SQL)

当 Entity SQL 查询有多个运算符时,运算符优先级确定执行运算的先后次序。执行顺序可能对查询结果有明显的影响。

运算符的优先级别如下表中所示。在较低级别的运算符之前先对较高级别的运算符进行求值。

级别 运算类型 运算符

1

最优先

. , [] ()

2

一元

! not

3

乘法性的

* / %

4

累加性

+ -

5

排序

< > <= >=

6

相等

= != <>

7

条件 AND

and &&

8

条件 OR

or ||

当一个表达式中的两个运算符有相同的运算符优先级别时,将按照它们在查询中的位置对其从左到右进行求值。例如x+y-z的求值顺序等同于 (x+y)-z

在查询中可以使用括号替代所定义的运算符的优先级。首先对括号中的内容进行求值,从而产生一个结果,然后括号外的运算符才可以使用这个结果。例如x+y*z先将yz相乘,然后加上 x,但(x+y)*z先将xy相加,然后将结果与 z 相乘。

另请参见

概念

运算符 (Entity SQL)