完全匹配的集查询中的SQL查询集

雪球

我想基于完全匹配的Attribute_Ids数组选择一个Product_Id 例如,如果我查询的Attribute_Ids为9、4和2,我希望查询返回的Product_Id为1。但是,如果我查询的9和4,则我不希望返回任何东西。我该怎么做?

Attribute_Id             |     Product_Id
    9                    |     1
    4                    |     1
    2                    |     1
    9                    |     2
    5                    |     2
    9                    |     3
    6                    |     3
    9                    |     4
    7                    |     4

现在,我能够根据先前的问题返回模糊匹配。您将如何修改它以获得完全匹配?SQL查询根据另一列中的唯一元素在列中查找公共ID

select Product_Id
from table t
where Attribute_Id in (9, 5)
group by Product_Id
having count(*) = 2;
乔治·贝索斯(Giorgos Betsos)

试试这个:

SELECT Product_Id
FROM table 
GROUP BY Product_Id
HAVING COUNT(DISTINCT CASE WHEN Attribute_Id IN (9, 5) THEN Attribute_Id END) = 2 AND
       COUNT(CASE WHEN Attribute_Id NOT IN (9, 5) THEN 1 END) = 0

上述查询返回的那些Product_Id相关值 Attribute_Id值9和5以及相关的任何其他不Attribute_Id值。

在这里演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

完全匹配的集查询中的SQL查询集

来自分类Dev

如何制定SQL查询以识别表中的匹配项集

来自分类Dev

来自Django中查询集的查询集

来自分类Dev

需要在SQL查询中替换并集

来自分类Dev

在MongoDB中查询完全匹配

来自分类Dev

SQL查询-NOW()上的并集

来自分类Dev

密码匹配查询合并结果集

来自分类Dev

如何从C#中的SQL查询检索数据集?

来自分类Dev

查询“映射表”以返回包含 SQL 中特定选项集的特定结果集

来自分类Dev

Mongo查询中的完全匹配数组

来自分类Dev

使用并集和条件优化SQl查询

来自分类Dev

使用SQL查询过滤数据集

来自分类Dev

SQL查询从字符超集查找记录

来自分类Dev

使用SQL查询过滤数据集

来自分类Dev

SQL相同查询的不同输出结果集

来自分类Dev

在Django 1.7中使用复杂的自定义SQL查询并返回查询集

来自分类Dev

在Django 1.7中使用复杂的自定义SQL查询并返回查询集

来自分类Dev

Kibana查询完全匹配

来自分类Dev

SQL查询两个查询和并集

来自分类Dev

如何使用 django 查询集编写这个原始 SQL 查询?

来自分类Dev

在Django中向查询集添加属性

来自分类Dev

1.5中的Django日期时间查询集

来自分类Dev

DateTimeField查询集在Django中返回None

来自分类Dev

在Django中重用filter()查询集

来自分类Dev

在Django中按ManyToManyField排序查询集

来自分类Dev

bash脚本中的MySQL查询结果集

来自分类Dev

APIview中的Django Rest查询集

来自分类Dev

Django 1.6中的复杂查询集

来自分类Dev

在 Django 中获取空或空查询集