MYSQL AND & OR 优先级
MYSQL AND & OR priority
我知道建议使用括号来分隔 and
,or
statements.but 我想知道 mysql 引擎如何在没有 parenthesis.lets 的情况下渲染语句假设我们有这个声明:
select * from users where A and B or C and D;
带括号会怎样?
AND 的优先级高于 OR。
select * from users where (A and B) or (C and D);
参考:http://dev.mysql.com/doc/refman/5.7/en/operator-precedence.html
AND 的优先级高于 OR.
Priority of AND and OR operator in Mysql select query
就像在数学表达式中:
AND is like a PRODUCT
OR is like a SUM
所以 AND 在 OR 之前执行,除非通过括号另有说明,就像在数学中一样。
我知道建议使用括号来分隔 and
,or
statements.but 我想知道 mysql 引擎如何在没有 parenthesis.lets 的情况下渲染语句假设我们有这个声明:
select * from users where A and B or C and D;
带括号会怎样?
AND 的优先级高于 OR。
select * from users where (A and B) or (C and D);
参考:http://dev.mysql.com/doc/refman/5.7/en/operator-precedence.html
AND 的优先级高于 OR.
Priority of AND and OR operator in Mysql select query
就像在数学表达式中:
AND is like a PRODUCT
OR is like a SUM
所以 AND 在 OR 之前执行,除非通过括号另有说明,就像在数学中一样。