SQL WHERE 条件查询教程
在SQL中,WHERE 条件用于在 SELECT 语句后过滤效果集,只返回符合条件的记录。它帮助我们从大量数据中提取所需的信息。以下是使用 WHERE 条件的逐步指南。
1. 基本语法
- SELECT [字段] FROM [表] WHERE [条件];
复制代码
- SELECT:指定要返回的字段。
- FROM:指定数据来自的表。
- WHERE:过滤符合条件的记录。
2. 示例数据
假设有一个 employees 表,包含以下列:
- id(员工ID)
- name(员工名字)
- department(部分)
- age(年龄)
数据如下:
- CREATE TABLE employees (
- id INT PRIMARY KEY,
- name VARCHAR(50) NOT NULL,
- department VARCHAR(30) NOT NULL,
- age INT NOT NULL
- );
- INSERT INTO employees (id, name, department, age)
- VALUES (1, 'Alice', 'Marketing', 28),
- (2, 'Bob', 'Sales', 36),
- (3, 'Charlie', 'HR', 25),
- (4, 'Diana', 'IT', 30);
复制代码 3. 常用 WHERE 条件类型
(1)等于(=)
筛选特定值的记录。
- SELECT id, name FROM employees WHERE age = 28;
复制代码 效果:返回年龄为28岁的员工。
(2)不等于(!= 或 <>)
筛选不等于特定值的记录。
- SELECT id, name FROM employees WHERE age != 30;
复制代码 效果:返回所有年龄不为30岁的员工.
(3)大于(>)、小于(<)
筛选大于或小于特定数值的记录。
- -- 大于
- SELECT id, name FROM employees WHERE age > 25;
- -- 小于
- SELECT id, name FROM employees WHERE age < 35;
复制代码 效果:分别返回年龄大于25岁和小于35岁的员工.
(4)大于等于(>=)、小于等于(<=)
筛选大于或等于、小于或等于特定数值的记录。
- -- 大于等于
- SELECT id, name FROM employees WHERE age >= 28;
- -- 小于等于
- SELECT id, name FROM employees WHERE age <= 30;
复制代码 效果:分别返回年龄大于等于28岁和小于等于30岁的员工.
(5)IN 条件
筛选记录包含在给定列表中的值。
- SELECT id, name FROM employees WHERE department IN ('Sales', 'Marketing');
复制代码 效果:返回部分为’Sales’或’Marketing’的员工.
(6)LIKE 条件
模式匹配,用于文本字段的筛选。
- SELECT id, name FROM employees WHERE name LIKE '%Alice';
复制代码 效果:返回名字包含’Alice’前缀的员工.
(7)BETWEEN 条件
在两个值之间过滤记录。
- SELECT id, name FROM employees WHERE age BETWEEN 25 AND 30;
复制代码 效果:返回年龄在25岁到30岁之间的员工.
4. WHERE 子句的位置
WHERE子句必须放置在 SELECT 和 FROM 之间。以下是正确的语法结构:
- SELECT [字段] FROM [表] WHERE [条件];
复制代码 如果 WHERE 条件不正确,SQL会返回空效果集。
5. 示例:完备的 SQL 查询
查询所有年龄大于25岁的员工
- SELECT id, name FROM employees WHERE age > 25;
复制代码 效果:返回所有年龄大于25岁的员工.
查询部分为 ‘Sales’ 或 ‘Marketing’ 的员工
- SELECT id, name FROM employees WHERE department IN ('Sales', 'Marketing');
复制代码 效果:返回部分是’Sales’或’Marketing’的员工.
查询名字包含 ‘John’ 的员工
- SELECT id, name FROM employees WHERE name LIKE '%John%';
复制代码 留意:LIKE 条件需要在数据库支持的编程语言中使用。
通过这些步调和示例,你可以有效地使用 WHERE 条件在SQL中过滤数据。记着,WHERE 条件可以帮助你快速找到所需的数据!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |