mysql连接结果(如果只有所有功能)
我有一个包含所有功能的复选框。用户可以选择一些功能。 如何列出所有已选择所有功能的人员mysql连接结果(如果只有所有功能),mysql,sql,mariadb,Mysql,Sql,Mariadb,我有一个包含所有功能的复选框。用户可以选择一些功能。 如何列出所有已选择所有功能的人员 person - id - name features - id - name person_feature - person_fk - feature_fk 例如,仅具有特征1、5和9的人 不是特征1和特征5的人。。。只有同时使用此功能才能确认。。。只提供,或至少提供。例:如果用户想要功能1、5、9,但有些人有 (1, 2, 5, 8, 9), (1, 5, 6, 7, 9), (1, 5, 9
person
- id
- name
features
- id
- name
person_feature
- person_fk
- feature_fk
例如,仅具有特征1、5和9的人
不是特征1和特征5的人。。。只有同时使用此功能才能确认。。。只提供,或至少提供。例:如果用户想要功能1、5、9,但有些人有
(1, 2, 5, 8, 9),
(1, 5, 6, 7, 9),
(1, 5, 9, 12)...
这些都会被认为是正常的,因为它们至少有1,5和9,你正在寻找
select
pf.person_fk,
p.name
from
person_feature pf
join person p
on pf.person_fk = p.id
group by
pf.person_fk,
p.name
having
sum( case when pf.feature_fk in ( 1, 5, 9 ) then 1 else 0 end ) >= 3
如果您只想要正好有3个的查询,只需将>=更改为just=请共享当前查询,查看您取得了多大的成绩,或者您是以何种方式开始的,它在哪里需要帮助。否则,这就像你要求SO社区做你的家庭作业一样。