SQL IN运算符


IN运算符用于WHEREHAVING (作为GROUP BY一部分),以将所选行限制为列表中的项“IN”。

以下是与WHERE子句结果集进行比较的当前完整学生列表:

select studentID, FullName, sat_score, rcd_updated from student;
+-----------+------------------------+-----------+---------------------+
 | studentID | FullName               | sat_score | rcd_updated         |
 +-----------+------------------------+-----------+---------------------+
 |         1 | Monique Davis          |       400 | 2017-08-16 15:34:50 |
 |         2 | Teri Gutierrez         |       800 | 2017-08-16 15:34:50 |
 |         3 | Spencer Pautier        |      1000 | 2017-08-16 15:34:50 |
 |         4 | Louis Ramsey           |      1200 | 2017-08-16 15:34:50 |
 |         5 | Alvin Greene           |      1200 | 2017-08-16 15:34:50 |
 |         6 | Sophie Freeman         |      1200 | 2017-08-16 15:34:50 |
 |         7 | Edgar Frank "Ted" Codd |      2400 | 2017-08-16 15:35:33 |
 |         8 | Donald D. Chamberlin   |      2400 | 2017-08-16 15:35:33 |
 |         9 | Raymond F. Boyce       |      2400 | 2017-08-16 15:35:33 |
 +-----------+------------------------+-----------+---------------------+
 9 rows in set (0.00 sec)

将显示在此列表中具有SAT分数的行(1000,2400):

select studentID, FullName, sat_score, rcd_updated
from student
where sat_score in (1000, 2400);
+-----------+------------------------+-----------+---------------------+
 | studentID | FullName               | sat_score | rcd_updated         |
 +-----------+------------------------+-----------+---------------------+
 |         3 | Spencer Pautier        |      1000 | 2017-08-16 15:34:50 |
 |         7 | Edgar Frank "Ted" Codd |      2400 | 2017-08-16 15:35:33 |
 |         8 | Donald D. Chamberlin   |      2400 | 2017-08-16 15:35:33 |
 |         9 | Raymond F. Boyce       |      2400 | 2017-08-16 15:35:33 |
 +-----------+------------------------+-----------+---------------------+
 4 rows in set (0.00 sec)

更多SQL教程

学习更多SQL教程