如何选择 ability_id 等于 1 和 2 以及 3 的 doctor_id? (所以答案是 70)
我知道我不能使用 IN 语句
doctor_id| ability_id
-------- | -------------
70 | 1
71 | 2
70 | 2
70 | 3
50 | 1
20 | 2
10 | 2
最佳答案
戈登查询的替代方法是按医生汇总,限制为 1、2 或 3 中的能力,然后保留具有三种不同能力的医生。这意味着保留的医生具有所有三个能力。
SELECT doctor_id
FROM yourTable
WHERE ability_id IN (1, 2, 3)
GROUP BY doctor_id
HAVING COUNT(DISTINCT ability_id) = 3
关于php - 如何在mysql中搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45545610/