runoops.com

SQL IN

IN 操作符

IN 操作符允许您在 WHERE 子句中规定多个值。

SQL IN 语法

SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...);


演示数据库

在本教程中,我们将使用 runoops样本数据库。

下面是选自 “websites” 表的数据:

+----+----------------+---------------------------+-------+---------+
| id | name           | url                       | alexa | country |
+----+----------------+---------------------------+-------+---------+
|  1 | Google          | https://www.google.cm/    |     1 | USA     |
|  2 | Amazon         | https://z.cn/             |     2 | USA     |
|  3 | 淘宝           | https://www.taobao.com/   |    10 | CN      |
|  4 | 自学教程       | http://runoops.com/       |  5787 | CN      |
|  5 | 微博           | http://weibo.com/         |    18 | CN      |
|  6 | stackoverflow  | http://stackoverflow.com/ |    66 | IND     |
+----+----------------+---------------------------+-------+---------+

IN 操作符实例

下面的 SQL 语句选取 name 为 "Google" 或 "自学教程" 的所有网站:

SELECT * FROM websites
WHERE name IN ('Amazon','自学教程');

输出结果:

mysql> SELECT * FROM websites
    -> WHERE name IN ('Amazon','自学教程');
+----+--------------+---------------------+-------+---------+
| id | name         | url                 | alexa | country |
+----+--------------+---------------------+-------+---------+
|  2 | Amazon       | https://z.cn/       |     2 | USA     |
|  4 | 自学教程     | http://runoops.com/ |  5787 | USA     |
+----+--------------+---------------------+-------+---------+
2 rows in set (0.00 sec)