0

我想从表中获取数据,其中 Id 应该在查询中给出,但不是 or 我会应用 and 运算符,所以让我们说 ID IN (5 AND 4 AND 3)

SELECT * FROM table WHERE id IN (5,4,3,1,6)

有没有可能得到这样的数据。

这是示例查询

SELECT PM.ContentID, PM.Author, PM.Title, PM.Journal, PM.Year, PM.Category, PM.StudyLocation, PM.FileURL from PublishedContentMaster PM join  TopicContentMapping T ON T.ContentID=PM.ContentID where PM.ContentID='100' AND T.TopicID IN (16,7) 

所以我想要 16 和 17 中都存在的那个,这就是为什么我需要而不是运算符的原因。

4

1 回答 1

1

我怀疑你想要一个聚合查询和一个having子句。它通常看起来像这样:

select x
from t
where id in (5, 4, 3, 1, 6)
group by x
having count(*) = 5;

在这种情况下,x将是您希望包含五个值的五行的列。

于 2016-12-22T04:38:46.617 回答