如何在SQL中过滤不同的值

时间:2018-03-07 15:58:49

标签: sql-server

我想使用SQL指令从Table [Sales]中过滤一些值。 我的表有日期,ID和销售。

所以我在Date于01/01/2017之后过滤它,但我也想过滤以排除一些“Id”,现在我只能过滤到一个,或者只排除一个,我该怎么办它,如果我想过滤 Id 12,53,68,98和150。

这是我现在得到的那个。

SELECT *
FROM [Sales]
WHERE Date >= "20170101" AND Id = 12

或者

WHERE Date >= "20170101" AND Id <> 12

3 个答案:

答案 0 :(得分:0)

试试这个:

   SELECT *
     FROM [Sales] WHERE Date >= "20170101" AND Id NOT IN (12,53,68,98)
祝你好运!!

答案 1 :(得分:0)

使用&#34; IN&#34;像:

WHERE .... AND Id IN (X, Y, Z, ...)

其中x,y,z,...是逗号分隔值。您可以使用与NOT相同的语句来排除值:

WHERE .... AND Id NOT IN (X, Y, Z, ...)

答案 2 :(得分:0)

试试这个:

SELECT *
FROM [Sales]
WHERE Date >= "20170101" 
AND Id IN (12,53,68,98,150)

OR:

SELECT *
FROM [Sales]
WHERE Date >= "20170101" 
AND Id NOT IN (12,53,68,98,150)