ToB企服应用市场:ToB评测及商务社交产业平台

标题: 【SQL教程|07】sql中条件查询where用法示例 [打印本页]

作者: 郭卫东    时间: 2025-2-20 01:19
标题: 【SQL教程|07】sql中条件查询where用法示例
SQL WHERE 条件查询教程

在SQL中,WHERE 条件用于在 SELECT 语句后过滤效果集,只返回符合条件的记录。它帮助我们从大量数据中提取所需的信息。以下是使用 WHERE 条件的逐步指南。

1. 基本语法

  1. SELECT [字段] FROM [表] WHERE [条件];
复制代码


2. 示例数据

假设有一个 employees 表,包含以下列:

数据如下:
  1. CREATE TABLE employees (
  2.     id INT PRIMARY KEY,
  3.     name VARCHAR(50) NOT NULL,
  4.     department VARCHAR(30) NOT NULL,
  5.     age INT NOT NULL
  6. );
  7. INSERT INTO employees (id, name, department, age)
  8. VALUES (1, 'Alice', 'Marketing', 28),
  9.        (2, 'Bob', 'Sales', 36),
  10.        (3, 'Charlie', 'HR', 25),
  11.        (4, 'Diana', 'IT', 30);
复制代码

3. 常用 WHERE 条件类型

(1)等于(=)

筛选特定值的记录。
  1. SELECT id, name FROM employees WHERE age = 28;
复制代码
效果:返回年龄为28岁的员工。

(2)不等于(!= 或 <>)

筛选不等于特定值的记录。
  1. SELECT id, name FROM employees WHERE age != 30;
复制代码
效果:返回所有年龄不为30岁的员工.

(3)大于(>)、小于(<)

筛选大于或小于特定数值的记录。
  1. -- 大于
  2. SELECT id, name FROM employees WHERE age > 25;
  3. -- 小于
  4. SELECT id, name FROM employees WHERE age < 35;
复制代码
效果:分别返回年龄大于25岁和小于35岁的员工.

(4)大于等于(>=)、小于等于(<=)

筛选大于或等于、小于或等于特定数值的记录。
  1. -- 大于等于
  2. SELECT id, name FROM employees WHERE age >= 28;
  3. -- 小于等于
  4. SELECT id, name FROM employees WHERE age <= 30;
复制代码
效果:分别返回年龄大于等于28岁和小于等于30岁的员工.

(5)IN 条件

筛选记录包含在给定列表中的值。
  1. SELECT id, name FROM employees WHERE department IN ('Sales', 'Marketing');
复制代码
效果:返回部分为’Sales’或’Marketing’的员工.

(6)LIKE 条件

模式匹配,用于文本字段的筛选。
  1. SELECT id, name FROM employees WHERE name LIKE '%Alice';
复制代码
效果:返回名字包含’Alice’前缀的员工.

(7)BETWEEN 条件

在两个值之间过滤记录。
  1. SELECT id, name FROM employees WHERE age BETWEEN 25 AND 30;
复制代码
效果:返回年龄在25岁到30岁之间的员工.

4. WHERE 子句的位置

WHERE子句必须放置在 SELECT 和 FROM 之间。以下是正确的语法结构:
  1. SELECT [字段] FROM [表] WHERE [条件];
复制代码
如果 WHERE 条件不正确,SQL会返回空效果集。

5. 示例:完备的 SQL 查询

查询所有年龄大于25岁的员工

  1. SELECT id, name FROM employees WHERE age > 25;
复制代码
效果:返回所有年龄大于25岁的员工.

查询部分为 ‘Sales’ 或 ‘Marketing’ 的员工

  1. SELECT id, name FROM employees WHERE department IN ('Sales', 'Marketing');
复制代码
效果:返回部分是’Sales’或’Marketing’的员工.

查询名字包含 ‘John’ 的员工

  1. SELECT id, name FROM employees WHERE name LIKE '%John%';
复制代码
留意:LIKE 条件需要在数据库支持的编程语言中使用。

通过这些步调和示例,你可以有效地使用 WHERE 条件在SQL中过滤数据。记着,WHERE 条件可以帮助你快速找到所需的数据!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4