MySQL SELECT 多个条件筛选同一列
MySQL是一种很常用的关系型数据库管理系统,在进行数据查询时使用的SELECT语句也是非常常见的。有时我们需要针对同一列的多个条件进行数据筛选,那么该如何实现呢?本文将为大家详细讲解。
阅读更多:MySQL 教程
使用IN关键字
IN关键字可以用来查询某个字段是否包含在给定的值列表中,使用方法如下:
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1, value2, ...);
例如,我们有一个包含学生信息的表格,其中有一个“性别”列:
| 学生姓名 | 年龄 | 性别 |
|---|---|---|
| 张三 | 18 | 男 |
| 李四 | 20 | 男 |
| 王五 | 19 | 女 |
| 赵六 | 20 | 女 |
如果我们想要查询所有女生的信息,可以使用以下语句:
SELECT *
FROM student
WHERE gender IN ('女');
使用OR关键字
OR关键字可以用来查询某个字段满足多个条件之一的数据,使用方法如下:
SELECT column_name(s)
FROM table_name
WHERE condition1 OR condition2;
例如,我们有一个包含学生信息的表格,其中有一个“年龄”列:
| 学生姓名 | 年龄 | 性别 |
|---|---|---|
| 张三 | 18 | 男 |
| 李四 | 20 | 男 |
| 王五 | 19 | 女 |
| 赵六 | 20 | 女 |
如果我们想要查询年龄为18或20的学生信息,可以使用以下语句:
SELECT *
FROM student
WHERE age = 18 OR age = 20;
使用AND关键字
AND关键字可以用来查询某个字段同时满足多个条件的数据,使用方法如下:
SELECT column_name(s)
FROM table_name
WHERE condition1 AND condition2;
例如,我们有一个包含学生信息的表格,其中有一个“性别”和“年龄”列:
| 学生姓名 | 年龄 | 性别 |
|---|---|---|
| 张三 | 18 | 男 |
| 李四 | 20 | 男 |
| 王五 | 19 | 女 |
| 赵六 | 20 | 女 |
如果我们想要查询年龄为20且性别为女的学生信息,可以使用以下语句:
SELECT *
FROM student
WHERE age = 20 AND gender = '女';
使用NOT关键字
NOT关键字可以用来查询某个字段不满足某个条件的数据,使用方法如下:
SELECT column_name(s)
FROM table_name
WHERE NOT condition;
例如,我们有一个包含学生信息的表格,其中有一个“年龄”列:
| 学生姓名 | 年龄 | 性别 |
|---|---|---|
| 张三 | 18 | 男 |
| 李四 | 20 | 男 |
| 王五 | 19 | 女 |
| 赵六 | 20 | 女 |
如果我们想要查询除了年龄为18和20的学生信息,可以使用以下语句:
SELECT *
FROM student
WHERE age NOT IN (18,20);
总结
以上就是MySQL SELECT 多个条件筛选同一列的方法,分别利用了IN、OR、AND和NOT关键字来实现数据筛选。希望此篇文章能对大家有所帮助。
极客笔记