逻辑 *** 作符or,表示的二选一的意思,就是说两者只要有一个满足就可以了。不管是在数据库还是编程语言中,or的意思都是这样的。
你说的两个条件都要满足的是逻辑 *** 作符and。
例句:select 列名 from 表名 where 条件1 or 条件2 and 条件3
SQL在处理or *** 作符之前,优先处理and *** 作符,如此例中,会优先查找满足条件2和条件3的数据,然后再查找出满足条件1的.若要解决这个问题,可以使用圆括号明确的分组相应的 *** 作符.
如:select 列名 from 表名 where ( 条件1 or 条件2 ) and 条件3
注意:在使用具有AND和OR *** 作符的where子句中都应使用圆括号明确的分组 *** 作符,不要过分依赖默认计算次序,即使它确实是你想要的东西也是如此.使用圆括号没有什么坏处,它能消除歧义.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)