我有两张桌子PersonInterest
Person表格结构

Id | Name

Interest表格结构
Id | Person Id | Interest Category

我的问题是如何让喜欢“音乐”、“电影”和“运动”的人加入。类别将是动态的。
因此,它将喜欢使用IN运算符,但通过使用AND条件而不是IN运算符中的condition。
SELECT `Person Id` FROM Interest
WHERE `Interest Category` IN ('music', 'movie', 'sport');

最佳答案

您可以使用HAVING COUNT。这个数字也必须是动态的。

SELECT person_id
FROM interest
WHERE interest_category IN ( 'music', 'movie', 'sport');
GROUP BY person_id
HAVING COUNT(*) = 3;

关于mysql - 如何在IN条件下使用IN运算符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10813088/

10-10 06:35