我有一张这样的表:
我想找到courseId属于2个或更多categoryIds的courseId。例如。如果我将categoryId设为18112和21115,那么它应该只给出courseIds - 18602& 21101
我该怎么做?
答案 0 :(得分:1)
按courseId
分组,只选择那些拥有这两个categoryId
s
select courseId
from your_table
where categoryId in (18112,21115)
group by courseId
having count(distinct categoryId) = 2
答案 1 :(得分:1)
select courseId
from courses_categories
where categoryId in (18112,21115)
group by courseId
having count(distinct categoryId) >= 2
答案 2 :(得分:1)
Group by
和Having
条款可以帮助您。
select courseId
from your_table
where categoryId in (18112,21115)
group by courseId
having count(distinct categoryId) >= 2
答案 3 :(得分:1)
您可以使用GROUP BY
和HAVING
,如下所示:
SELECT courseId
FROM table_name
WHERE categoryId IN (18112,21115)
GROUP BY courseId
HAVING COUNT(DISTINCT categoryId) >= 2