首页 > 解决方案 > 根据两列选择项目

问题描述

我有一个数据库...

descriptionID   | ItemID  |  description 
--------------------------------------------  
1               |   1     |    Blue
2               |   1     |    Small
3               |   1     |    Circular
4               |   2     |    Blue
5               |   2     |    Large
6               |   3     |    Small
7               |   4     |    Blue
...                 ...           ...

我想返回 itemID,它有蓝色和小条目,因此返回 itemID = 1 而没有其他 itemID。

ItemID
--------------
   1

标签: sqloracle

解决方案


您可以使用聚合。假设没有重复:

select itemid
from t
where description in ('Blue', 'Small')
group by itemid
having count(*) = 2;

推荐阅读