我一直在搜索几个小时(下午1点到11点),以寻找我必须编写的SQL查询的解决方案。基本上,我有2个表,我必须从一个表中选择ID,在另一个表中具有最大结果。第二个问题是有2个ID。我无法解释我的意思,因为我不确定,但我可以发布我的指示和表格的链接。
任何帮助将不胜感激。我还看了SO和其他地方的其他一百万个帖子,但即使它看起来很相关,我也不知道要做些什么改变以满足我的需求。
即
所以我的任务如下: -
Display the name and the telephone number of private owners which have more properties than anybody else.
图片中的顶部表格显示“出租物业”表格,下部表格显示“私人业主”。
在提到问题时,我需要使用私有所有者表的主键来计算每个私有所有者可以租用的属性数,然后显示拥有该私有所有者的私有所有者的详细信息。大多数可用的房产 - 通过研究数据,是2个私人所有者(CO87和CO93)。
再一次,我很感激任何帮助,我已经把头发拉了12小时的最佳时间:/
先谢谢你们,
添
P.s - 只是为了好奇,这是大学任务的疯狂数量的SQL任务之一=)
编辑: - 所有者ID是字符串,而不是整数。
答案 0 :(得分:1)
您的流程应该是:
似乎这应该有效:
SELECT * FROM Owners
WHERE OwnerID IN
(
SELECT OwnerID
FROM Properties
GROUP BY OwnerID
HAVING COUNT(*) =
(SELECT COUNT(*)
FROM Properties
GROUP BY OwnerID
ORDER BY COUNT(*) DESC
LIMIT 1)
)