假设我有两个表:cars –汽车清单carname | modelnumber | ...passedtest –包含汽车通过的所有测试:id | carname | testtype | date | ...1 | carA | A | 2000 |2 | carB | C | 2000 |3 | carC | D | 2001 |4 | carA | C | 2002 |现在,如何从passedtest通过所有测试(A,B,C,D)的表中选择一辆汽车?我尝试了该IN语句,但它也与通过一项测试的汽车匹配。我正在寻找一条语句来匹配所有行列表中的所有值。
3 回答
慕尼黑8549860
TA贡献1818条经验 获得超11个赞
这个怎么样?
SELECT carname
FROM PassedTest
GROUP BY carname
HAVING COUNT(DISTINCT testtype) = 4
您还可以将其用作从cars表中获取信息的内部语句:
SELECT *
FROM cars
WHERE carname IN (
SELECT carname
FROM PassedTest
GROUP BY carname
HAVING COUNT(DISTINCT testtype) = 4
)
- 3 回答
- 0 关注
- 406 浏览
添加回答
举报
0/150
提交
取消