在SQL中进行数据筛选主要使用SELECT语句结合WHERE子句。以下是一些基本的筛选方法和示例:
使用WHERE子句指定条件来筛选数据。
SELECT * FROM 表名 WHERE 列名 = '值';
例如,从employees表中筛选出department为Sales的员工:
SELECT * FROM employees WHERE department = 'Sales';
可以使用AND、OR和NOT来组合多个条件。
ANDSELECT * FROM employees WHERE department = 'Sales' AND salary > 50000;
ORSELECT * FROM employees WHERE department = 'Sales' OR department = 'Marketing';
NOTSELECT * FROM employees WHERE NOT department = 'Sales';
使用BETWEEN、<、>、<=、>=来进行范围筛选。
SELECT * FROM employees WHERE salary BETWEEN 40000 AND 60000;
使用LIKE进行模糊匹配,%表示任意数量的字符,_表示单个字符。
SELECT * FROM employees WHERE name LIKE 'J%'; -- 名字以J开头的员工
SELECT * FROM employees WHERE name LIKE '%n'; -- 名字以n结尾的员工
SELECT * FROM employees WHERE name LIKE 'J_n'; -- 名字中间有一个字符,且以J开头,以n结尾的员工
使用IN和NOT IN来筛选多个可能的值。
SELECT * FROM employees WHERE department IN ('Sales', 'Marketing');
SELECT * FROM employees WHERE department NOT IN ('Sales', 'Marketing');
用于筛选空值和非空值。
SELECT * FROM employees WHERE email IS NULL;
SELECT * FROM employees WHERE email IS NOT NULL;
可以使用括号来组合多个条件,改变运算顺序。
SELECT * FROM employees WHERE (department = 'Sales' OR department = 'Marketing') AND salary > 50000;
假设有一个简单的employees表:
| id | name | department | salary |
|---|---|---|---|
| 1 | Alice | Sales | 55000 |
| 2 | Bob | Marketing | 60000 |
| 3 | Charlie | Sales | 48000 |
| 4 | David | HR | 52000 |
通过上述方法,你可以灵活地筛选出所需的数据。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。