[英]Selecting column and max
我会解释我的问题所以它变得更加清晰。
我必须选择医院用量最大的医院。
我的表看起来像这样:
Medic_Hospital values (codhospital,codmedic)
我努力了 :
SELECT MAX(codmedic) FROM Medic_Hospital
但那只返回6号(这是军医的id之一)
SELECT codhospital,count(codmedic) FROM Medic_Hospital
where max(codmedic) = count(codmedic)
group by codhospital
但这也失败了
聚合可能不会出现在WHERE子句中,除非它位于HAVING子句或选择列表中包含的子查询中,并且要聚合的列是外部引用。
SELECT codhospital,MAX(COUNT(codmedic)) from Medic_Hospital
但那失败了
“无法对包含聚合或子查询的表达式执行聚合函数。”
我在SQL方面不是很有经验,我可以看到我的逻辑在这里让我失望。 有人能指出我正确的方向吗?
您可以使用top
子句返回有序查询的第一行:
SELECT TOP 1 codhospital, COUNT(codmedic)
FROM Medic_Hospital
GROUP BY codhospital
ORDER BY 2 DESC
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.