gpt4 book ai didi

MySql如何返回包含所有选定功能的所有项目

转载 作者:搜寻专家 更新时间:2023-10-30 22:24:54 24 4
gpt4 key购买 nike

assigned_features

feature_id | item_id
-----------------------------------------------
1 | 1
2 | 1
3 | 1
1 | 2
2 | 2
1 | 3

使用 mysql,我试图返回包含所有选定特征的所有项目。

例如,我希望返回 feature_id = 1 和 2 的项目。这应该返回 item_id 1 和 2。

或者,如果我只想检索 feature_id = 1,2 和 3 的项目,结果应该是项目 1。

我真的不知道从哪里开始。

谢谢!

最佳答案

你可以做聚合:

select item_id
from assigned_features af
where feature_id in (1,2)
group by item_id
having count(distinct feature_id) = 2;

类似地,您可以只增加第二个示例的计数:

select item_id
from assigned_features af
where feature_id in (1,2,3)
group by item_id
having count(distinct feature_id) = 3;

但是,DISTINCT 在这里是多余的,如果 item_id 没有重复的 feature_id,那么您可以使用 count(* ) = 2count(*) = 3

关于MySql如何返回包含所有选定功能的所有项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54475825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com