在 SQL 中,在两个情况下会用到 IN 这个指令;这一页将介绍其中之一 -- 与 WHERE 有关的那一个情况。在这个用法下,我们事先已知道至少一个我们需要的值,而我们将这些知道的值都放入IN 这个子句。 IN 指令的 语法为下:
SELECT "栏位名" FROM "表格名" WHERE "栏位名" IN ('值一', '值二', ...);
在括弧内可以有一或多个值,而不同值之间由逗点分开。值可以是数目或是文字。若在括弧内只有一个值,那这个子句就等于
WHERE "栏位名" = '值一'
举例来说,若我们要在以下的 Store_Information 表格中找出所有含盖 Los Angeles 或 San Diego 的资料,
Store_Information 表格
Store_Name | Sales | Txn_Date |
Los Angeles | 1500 | 05-Jan-1999 |
San Diego | 250 | 07-Jan-1999 |
San Francisco | 300 | 08-Jan-1999 |
Boston | 700 | 08-Jan-1999 |
我们就打入,
SELECT * FROM Store_Information WHERE Store_Name IN ('Los Angeles', 'San Diego');
结果:
Store_Name | Sales | Txn_Date |
Los Angeles | 1500 | Jan-05-1999 |
San Diego | 250 | Jan-07-1999 |
Linux实测结果如下: