我有以下包含 2 列的数据库:
posts id category id
1 2
2 1
1 3
3 3
3 2
4 5
我需要一个查询,当提取所有属于 2 和 3 类的帖子 id 时,这意味着:id 为 1 和 3 的帖子。
我有以下包含 2 列的数据库:
posts id category id
1 2
2 1
1 3
3 3
3 2
4 5
我需要一个查询,当提取所有属于 2 和 3 类的帖子 id 时,这意味着:id 为 1 和 3 的帖子。
选择类别 2 和 3 中的所有帖子 ID:
SELECT posts_id
FROM posts
WHERE categoryId IN (2, 3)
GROUP BY posts_id
HAVING COUNT(distinct categoryId) = 2;
仅选择仅category_id = 5
与其他任何关联而不与任何其他关联的帖子 ID:
SELECT posts_id
FROM posts
GROUP BY posts_id
HAVING SUM(categoryId <> 5) = 0;
SELECT post_id, category_id
FROM posts
WHERE category_id IN (2, 3)
GROUP BY post_id
ORDER BY category_id;