Bài viết phổ biến của tác giả
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
编辑:我似乎问错了这个问题。
我正在尝试寻找一种方法来查询一个集合是否在另一个集合中可用。例如:
SELECT * FROM something
WHERE (1, 3) IN (1, 2, 3, 4, 5)
在这种情况下,1 和 3 在集合 (1, 2, 3, 4, 5) 中。另一个例子:
SELECT * FROM something
WHERE (1, 3) IN (1, 5, 7, 9);
在这种情况下,1 和 3 不在集合 (1, 5, 7, 9) 中,因此不应从表中提取任何内容。
1 Câu trả lời
注意:这回答了原问题,这似乎与OP修改后的问题无关。
您可以通过以下方式获取完成所有三个级别的用户:
SELECT cl.user_id
FROM completed_levels cl
WHERE cl.id IN (3, 5, 7)
GROUP BY cl.user_id
HAVING COUNT(DISTINCT cl.id) = 3;
(注意:如果给定用户的 ID 是唯一的,则不需要 RIÊNG BIỆT
. )
然后,您可以使用 JOIN
或类似的结构获得您想要的:
SELECT u.*
FROM users u JOIN
(SELECT cl.user_id
FROM completed_levels cl
WHERE cl.id IN (3, 5, 7)
GROUP BY cl.user_id
HAVING COUNT(DISTINCT cl.id) = 3
) cu
ON cl.user_id = u.id;
关于mysql - WHERE(集合)IN(集合),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41483503/
Tôi là một lập trình viên xuất sắc, rất giỏi!