区别:1、在用于筛选条件时,and的意思是“与”,必须要所有条件都成立时返回为true,而or的意思是“或”,只要有一个条件成立就会返回true;2、and的优先级大于or。

本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。

oracle中and和or的区别是什么

1.and表示交

2.or表示并

3.and的优先级比or高

(FirstName='Thomas' OR FirstName='William') AND LastName='Carter' 会得到 lastname 必须为 carter ,firstname 为 thomas  或者 william的人 
 thomas   carter
 william    carter
FirstName='Thomas' OR FirstName='William'  AND LastName='Carter' 可以得到 william carter 或者 firstname 为ithomas lastname 不一定是 carter的人 比如:
 thomas   carter
 william    carter
 thomas   king

就是 or 和and 的先后顺序的问题, and 的优先级比 or的高 ,a or b and c 先计算 b and c 的结果 再去计算 a 的。

and优先级大于or。

  加括号则优先执行or,后执行and;不加括号,会先执行and,再执行or,所以查询结果不同。举例:

  数据库存在数据:

  Thomas Carter

  William Carter

  Thomas King

  执行:

SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William')
  AND LastName='Carter'

  结果为:

  Thomas Carter

  William Carter

  执行:

SELECT * FROM Persons WHERE FirstName='Thomas' OR FirstName='William'
  AND LastName='Carter'

  结果为:

  Thomas Carter

  William Carter

  Thomas King

推荐教程:《Oracle视频教程》

以上就是oracle中and和or的区别是什么的详细内容,转载自php中文网

点赞(16) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部