SQL查询教程:WHERE子句与条件筛选
56 浏览量
更新于2024-08-04
收藏 14KB DOCX 举报
"WHERE子句是SQL查询语句中不可或缺的一部分,它用于定义查询结果需要满足的具体条件。通过WHERE子句,我们可以对数据进行精确或模糊筛选,以获取我们需要的信息。以下是对WHERE子句及其相关操作的详细说明:
一、条件表达式筛选
条件表达式筛选是WHERE子句的基础,它允许我们根据列的特定值来过滤结果。常见的比较运算符包括大于(>)、小于(<)、等于(=)、不等于(!=或<>)、大于等于(>=)和小于等于<=(注意,在某些数据库系统中,不等于推荐使用<>而非!=)。例如,以下SQL语句将返回所有薪水超过12000的员工记录:
```sql
select * from employees where salary > 12000;
```
二、逻辑表达式筛选
当需要同时满足多个条件时,我们可以使用逻辑运算符。在SQL中,这些运算符包括AND、OR和NOT。AND用于同时满足多个条件,OR用于选择满足任一条件的结果,NOT用于否定一个条件。以下例子展示了如何组合使用这些运算符:
```sql
select last_name, department from employees
where salary >= 10000 and salary <= 20000; -- 找到薪水在10000到20000之间的员工
select * from employees
where not (department_id >= 90 and department_id <= 110) or salary > 15000; -- 找到不在90-110部门且薪资高于15000的员工
```
三、模糊查询
模糊查询允许我们进行部分匹配或范围匹配。其中最常用的关键字是LIKE,它可以与通配符配合使用:
1. `%`:代表任意数量的字符。例如,以下语句将返回所有名字中包含字母"a"的员工:
```sql
select * from employees where last_name like '%a%';
```
2. `_`:代表单个字符。例如,要查找名字中有"n"且在"n"之前有两个字符的员工:
```sql
select last_name from employees where last_name like '__n_l%';
```
此外,还有其他模糊查询关键字,如BETWEEN AND用于指定范围,IN用于检查是否属于指定列表,IS NULL用于检查字段是否为空。
四、BETWEEN AND
BETWEEN AND 关键字用于选择在两个值之间的数据。例如,找出薪水在15000到20000之间的员工:
```sql
select * from employees where salary between 15000 and 20000;
```
五、IN
IN 关键字用于指定一个值列表,返回所有在列表中的数据。比如,找出部门ID为90、100或110的员工:
```sql
select * from employees where department_id in (90, 100, 110);
```
六、IS NULL
IS NULL 用于查找字段值为空的记录。例如,找出所有未分配部门的员工:
```sql
select * from employees where department_id is null;
```
WHERE子句在SQL查询中起到关键作用,它结合各种比较和逻辑运算符,以及模糊查询功能,使我们能够灵活地从数据库中提取所需数据。熟练掌握WHERE子句的使用,能极大地提高数据查询的效率和准确性。
2022-11-27 上传
2022-07-14 上传
2023-03-04 上传
2024-03-26 上传
2024-07-15 上传
2013-06-20 上传
2022-12-18 上传
2021-09-13 上传
2019-11-07 上传
Java毕设王
- 粉丝: 9150
- 资源: 1095
最新资源
- JavaScript实现的高效pomodoro时钟教程
- CMake 3.25.3版本发布:程序员必备构建工具
- 直流无刷电机控制技术项目源码集合
- Ak Kamal电子安全客户端加载器-CRX插件介绍
- 揭露流氓软件:月息背后的秘密
- 京东自动抢购茅台脚本指南:如何设置eid与fp参数
- 动态格式化Matlab轴刻度标签 - ticklabelformat实用教程
- DSTUHack2021后端接口与Go语言实现解析
- CMake 3.25.2版本Linux软件包发布
- Node.js网络数据抓取技术深入解析
- QRSorteios-crx扩展:优化税务文件扫描流程
- 掌握JavaScript中的算法技巧
- Rails+React打造MF员工租房解决方案
- Utsanjan:自学成才的UI/UX设计师与技术博客作者
- CMake 3.25.2版本发布,支持Windows x86_64架构
- AR_RENTAL平台:HTML技术在增强现实领域的应用