-1

我们使用IN子句来替换许多OR条件。
像,我可以有任何其他条款来代替许多AND条件吗?

4

3 回答 3

1

我认为您正在寻找此查询的替代方法,

SELECT  ID
FROM    TableName
WHERE   col = 1 AND col = 2 AND col = 3 

这将给出空结果集,因为一条记录一次只能有一个值。这应该写成:

SELECT  ID
FROM    TableName
WHERE   col IN (1, 2, 3)
GROUP   BY ID
HAVING  COUNT(*) = 3

关系划分的SQL

于 2013-04-21T15:50:01.433 回答
1

那没有意义:

YourColumn AND_IN (1,2,3)

这永远不会是真的,因为一列不能同时是两个值。

于 2013-04-21T15:43:05.940 回答
1

不,

那是因为一个字段不会有多个值。

例如。

你永远不会写一个查询说

SELECT * 
FROM
tblName
WHERE 
fldCol = 1
AND fldCol = 2
AND fldCol = 3;
于 2013-04-21T15:43:38.657 回答