SQL IN
时间:2018-11-15 17:13:53 来源:igfitidea点击:
使用SQL IN查询列值在某一组值中的行。
在本教程中,您将学习如何使用SQL IN操作符来选择列值位于一组值中的行。
IN操作符在WHERE子句中用于选择其值位于一组值中的行。
您可以在任何接受WHERE子句(如SELECT、UPDATE或DELETE)的SQL语句中使用IN 操作符。
下面是如何在SELECT语句中使用IN:
SELECT column1, column2,... FROM table_name WHERE (expr | column) IN (value1 , value2, ...);
如果列的表达式或者值与列表中的值匹配,则IN操作符返回TRUE,否则返回FALSE。
SQL IN 示例
例如,要选择成本为$90、$92或$100的产品,您可以执行以下查询:
SELECT productid, unitcost FROM item WHERE unitcost IN (90 , 92, 100)
SQL IN 和 SQL OR 的比较
使用IN操作符可以避免在WHERE子句中使用多个OR操作符。
例如上面的查询语句可以重写为:
SELECT productid, unitcost FROM item WHERE unitcost = 90 OR unitcost = 92 OR unitcost = 100
当值越来越多时,使用OR操作符的话查询语句就会变得不方便阅读。
SQL IN操作符和NOT 一起使用
IN操作符可以与NOT操作符组合来选择其列值不在一组值中的行。
例如,您可以使用以下查询选择成本不是90、92和100的产品:
SELECT productid, unitcost FROM item WHERE unitcost NOT IN (90 , 92, 100)