在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

如何解决SQL语句中AND和OR执行顺序遇到的问题

151次阅读
没有评论

共计 754 个字符,预计需要花费 2 分钟才能阅读完成。

这篇文章将为大家详细讲解有关如何解决 SQL 语句中 AND 和 OR 执行顺序遇到的问题,丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

场景

1、有一张学生表 Student, 表字段包括 Id(用户主键)、Name(用户名)、Grade(年级)、Class(班级)、Sex(性别)。如下:

表结构

2、在表中导入十条测试数据,如下:

表数据

3、现需要查询出性别为女的 1 年级女学生,或者性别为女的 2 班级女学生。SQL 语句如下:
  select * from student where sex= 女 and grade=1 or > 但是该 sql 查询出来的结果并不符合要求,执行结果如下:

执行结果

执行的结果中还查询出了班级为 2 的男学生,显然结果是不正确的。

4、修改下 SQL 语句,添加上括号。如下:

select * from student where sex= 女  and (grade=1 or  >

该 sql 查询出来的结果符合要求

分析

从上面的场景中,问题的关键就在于 AND 和 OR 的执行顺序问题。
查阅资料,关系型运算符优先级高到低为:NOT AND OR
如果 where 后面有 OR 条件的话,则 OR 自动会把左右的查询条件分开。
就如上面场景中的第一条语句,他的查询条件分为两部分(或):

1、sex= 女  and grade=1
2、  >

这也就是查询出 1 年级的女学生,2 班级的学生。不符合最初查询的要求。
那么解决办法就是使用括号区分执行的顺序
就如上面场景的第二条语句,查询条件分为两部分(并):

1、 sex= 女  
2、 (grade=1 or  >

关于“如何解决 SQL 语句中 AND 和 OR 执行顺序遇到的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计754字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 国产亚洲福利一区二区免费看 | 免费a级毛片无码 | 18禁美女黄网站色大片免费看 | 99热久久只有精品99只有精品 | 91午夜精品亚洲一区二区三区 | 久久不见久久见免费影院www | 色综合热无码热国产 | 国产精品国语自产拍在线观看 | 国产aⅴ激情无码久久久无码 | 一区二区精品 | 亚洲天堂成人网 | 欧美亚洲福利 | 精品国产av 无码一区二区三区 | 国产精品久久久久久久久久久威 | 欧美成人黄色网 | 欧美色图中文字幕 | 亚洲精品少妇30p | 亚洲国产欧美日韩一区二区三区 | 97视频精品全国免费观看 | 欧美va天堂 | 伊人天天操 | 69国产成人综合久久精品91 | 玖玖啪 | 一本一道av无码中文字幕麻豆 | 国精一二二产品无人区免费应用 | 午夜精品视频在线 | 国内精品久久久久影院老司机 | 午夜视频在线观看免费高清 | 欧美mv日韩mv国产网站 | 日韩a在线观看 | 一区二区免费在线观看 | 久草国产精品视频 | 999精品视频在线观看热6 | 欧美性久久 | 亚洲欧洲久久久精品 | 欧美大黄大色一级毛片出红 | ww国产ww在线观看免 | 亚洲深深色噜噜狠狠网站 | 九九热精品免费观看 | 成人无码区免费a片www | 色综合久久98天天综合 |