SQL IN 操作符
IN 操作符
IN 操作符允许您在 WHERE 子句中规定多个值。
SQL IN 语法
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...);
IN 操作符实例
下面的 SQL 语句选取 name 为 "Google" 或 "菜鸟教程" 的所有网站:
在本教程中,我们将使用 RUNOOB 样本数据库。
下面是选自 "Websites" 表的数据:
+----+--------------+---------------------------+-------+---------+
| id | name | url | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA |
| 2 | 淘宝 | https://www.taobao.com/ | 13 | CN |
| 3 | 菜鸟教程 | http://www.runoob.com/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 20 | CN |
| 5 | Facebook | https://www.facebook.com/ | 3 | USA |
| 7 | stackoverflow | http://stackoverflow.com/ | 0 | IND |
+----+---------------+---------------------------+-------+---------+
实例
SELECT * FROM Websites
WHERE name IN ('Google','菜鸟教程');
执行输出结果:
IN 与 = 的异同
- 相同点:均在WHERE中使用作为筛选条件之一、均是等于的含义
- 不同点:IN可以规定多个值,等于规定一个值
IN
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...);
=
SELECT column_name(s)
FROM table_name
WHERE column_name=value1;
in 与 = 的转换
select * from Websites where name in ('Google','菜鸟教程');
可以转换成 = 的表达:
select * from Websites where name='Google' or name='菜鸟教程';