news 2026/4/23 9:22:43

SQL必会必知整理-05-数据过滤

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SQL必会必知整理-05-数据过滤
5.1组合WHERE子句
  • 操作符(operator)用来联结或改变WHERE子句中的子句的关键字。也称为逻辑操作符(logical operator)。
  • AND操作符:为了通过不止一个列进行过滤,可使用AND操作符给WHERE子句附加条件。用在WHERE子句中的关键字,用来指示检索满足所有给定条件的行。还可以添加多个过滤条件,每添加一条就要使用一个AND
SELECT 列1,列2,列3 FROM 表 WHERE 列1 = 条件1 AND 列2 = 条件2;
  • OR操作符:WHERE子句中使用的关键字,用来表示检索匹配任一给定条件的行。
SELECT 列1,列2,列3 FROM 表 WHERE 列1 = 条件1 OR 列2 = 条件2;
  • 计算次序:
    • WHERE可包含任意数目的ANDOR操作符。允许两者结合以进行复杂和高级的过滤。
    • SQL(像多数语言一样)在处理OR操作符前,优先处理AND作符。此问题的解决方法是使用圆括号明确地分组相应的操作符。
    • 任何时候使用具有ANDOR操作符的WHERE子句,都应该使用圆括号明确地分组操作符。不要过分依赖默认计算次序,即使它确实是你想要的东西也是如此。使用圆括号没有什么坏处,它能消除歧义。
SELECT 列1,列2,列3 FROM 表 WHERE (列1 = 条件1 OR 列1 = 条件2) AND 列2 = 条件3;
5.2 IN操作符
  • 圆括号在WHERE子句中还有另外一种用法。IN操作符用来指定条件范围,范围中的每个条件都可以进行匹配。IN取合法值的由逗号分隔的清单,全都括在圆括号中。(相当于OR)
  • 优点:
    • 在使用长的合法选项清单时,IN操作符的语法更清楚且更直观。
    • 在使用IN时,计算的次序更容易管理(因为使用的操作符更少)。
    • IN操作符一般比OR操作符清单执行更快。
    • IN的最大优点是可以包含其他SELECT语句,使得能够更动态地建立WHERE子句。
SELECT 列1,列2,列3 FROM 表 WHERE 列1 IN (条件1,条件2);
5.3 NOT操作符
  • WHERE子句中的NOT操作符有且只有一个功能,那就是否定它之后所跟的任何条件。
  • MySQL支持使用NOTINBETWEENEXISTS子句取反,这与多数其他DBMS允许使用NOT对各种条件取反有很大的差别。
  • 在更复杂的子句中,NOT是非常有用的。例如,在与IN操作符联合使用时,NOT使找出与条件列表不匹配的行非常简单。
SELECT 列1,列2,列3 FROM 表 WHERE 列1 NOT IN (条件1,条件2);
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 9:20:02

技术进展:牛单B细胞单抗制备如何成为对抗牛冠状病毒的新武器?

在动物疫病防控领域,精准的诊断和治疗工具一直是研究重点。牛冠状病毒(BCoV)作为一种引起犊牛腹泻和呼吸道疾病的重要病原体,其防控对畜牧业发展至关重要。近期,一项关于牛单B细胞单抗制备的技术进展引起了业界关注&am…

作者头像 李华
网站建设 2026/4/22 18:57:35

知识产权公司为什么需要专门的CRM系统?

在知识产权行业,客户关系错综复杂,案件周期长,文件繁多,流程严谨。传统的管理方式如Excel或通用型CRM,往往难以应对专利申请跟进、官文期限监控、费用管理等专业需求。信息分散、跟进脱节、遗忘重要节点等问题&#xf…

作者头像 李华
网站建设 2026/4/17 17:48:01

震惊!又一本顶刊被剔除TOP!

本期解刊《Environmental Pollution》《Environmental Pollution》是环境领域的老牌二区期刊,近几年EP发展不算太快(前期与总环不相上下,后来慢慢被拉开差距了),但其在行业内的认可度、含金量还是比较高的(…

作者头像 李华
网站建设 2026/4/21 23:00:26

排水管网智慧感知与运维管理系统方案

随着城市化进程加速和极端天气频发,城市排水管网面临严峻挑战:传统人工巡检效率低、数据滞后,难以实时掌握管网运行状态;暴雨内涝、管道破裂、泵站故障等事件频发,导致城市运行受阻、经济损失严重;同时&…

作者头像 李华
网站建设 2026/4/20 15:45:12

.net4和core的差异与iis部署差异

在.NET 生态中,.NET 4.5(.NET Framework)可以 “不发布直接部署”,但 **.NET 6(.NET Core / 跨平台系列)无法绕过发布流程直接部署 **,核心原因是两者的运行时模型、编译方式和 IIS 集成逻辑存在…

作者头像 李华