查找在SQL中租用每辆车的所有用户
数据库具有以下结构(主键为粗体):rent
(People
,cars
,Daterent
,ExpectedReturnDate
,EffectiveReturnDate
,Lateness
)People
(cars
,Daterent
,LatenessFee
,,)
我的尝试:
SELECT FROM rent
WHERE FORALL cars EXISTS Daterent
你能帮助我正确地表达这样一个疑问吗?
最佳答案
根据你所提供的,以下是有效的。
首先,您要确定有多少不同/独特的汽车:
SELECT COUNT(DISTINCT car) FROM rent)
接下来,您要选择那些租用了每一辆不同/独特的汽车的人-因此,一种方法是检查每个人的
COUNT
汽车和所有DISTINCT
汽车的COUNT
汽车是否相同:SELECT people
FROM rent
GROUP BY people
HAVING COUNT(DISTINCT car) = (SELECT COUNT(DISTINCT car) FROM rent)