我遇到了SQL问题。 这是我的代码:
SELECT Miss.Name, Miss.Surname, Master.Name, Master.Surname,
COUNT(Date.Id_date) AS [Dates_together]
FROM Miss, Master, Date
WHERE Date.Id_miss = Miss.Id_miss AND Date.Id_master = Master.Id_master
GROUP BY Miss.Name, Miss.Surname, Master.Name, Master.Surname
ORDER BY [Dates_together] DESC
我得到了结果:
Dorothy | Mills | James | Jackson | 28
Dorothy | Mills | Kayne | West | 28
Emily | Walters | James | Jackson | 13
Emily | Walters | Tom | Marvel | 12
Sunny | Sunday | Kayne | West | 9
我真的不知道要改变什么来得到这样的结果:
Dorothy | Mills | James | Jackson | 28
Emily | Walters | Tom | Marvel | 12
Sunny | Sunday | Kayne | West | 9
因为我不希望在结果中有重复的主人名或错过... :( 任何人都可以帮助我吗?
答案 0 :(得分:0)
看起来您的结果集是正确的,因为您获得了适当的不同组合。
答案 1 :(得分:0)
“重复”是准确的,因为您正在查询Miss和Master记录的组合,而不是Miss和Master记录本身。例如,在你的第二个结果集中,它没有捕捉到Dorothy Mills与Kayne West约会28次的事实。
答案 2 :(得分:0)
你没有提到你正在使用哪个数据库,但是如果我有正确的数据,那么你是想确定某对夫妇约会的次数?
我认为你需要问问自己,如果你有两个性别的人有同样的基督徒和姓氏的组合会发生什么......
从:
开始idMaster,idDate
从[Date]组中选择idMaster,idMiss,count(*)作为datecount从那里,您只需要将他们的名字添加到结果......
应该让你开始走上正确的轨道......