Priority of AND and OR operator in Mysql select query [closed]

£可爱£侵袭症+ 提交于 2020-01-01 09:14:30

问题


I have a written a mysql select query to fetch schedule details based on origin states,origin city,destination state and destination city. In my query i have used AND and OR operator.

Here is my query,

SELECT * FROM TruckLoadSchedule ts 
WHERE ts.originState IN (states) AND ts.originCity IN (cities) 
   OR ts.destState IN (states) AND ts.destCity IN (cities);

But I need to know the priority of AND and OR operator in the above query, i mean to say will it do something like this (X AND Y) OR (M AND Q) internally?


回答1:


Yes, AND has higher precedence than OR. x and y are bound together, m and q are bound together, then the resulting expressions are ORed.




回答2:


AND has a higher priority than OR in every programming language I have ever seen, and I've seen several dozen at close quarters, and implemented a few myself. This question was basically settled in 1960 with the Algol-60 report, if not already in Fortran (1957).

[There was one exception but it was a mis-implemented language with no operator precedence at all. I fixed that.]




回答3:


Yes it will do something like (X AND Y) OR (M AND Q). AND operator's priority is higher than OR.

For more see MySQL: Operator Precedence



来源:https://stackoverflow.com/questions/16249865/priority-of-and-and-or-operator-in-mysql-select-query

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!