2011-04-07 70 views
0

试图找到:显示奖金总额最高的前20位PIs以及他们所属的大学。试图获得排名前20的mySQL

Mysql的

SELECT max(award), pi, org 
FROM iis 
LIMIT 20; 

这只是给了我,我想前20名的记录: pic2

table

任何人?

+0

可能重复的[获取前20名的MySQL查询错误](http://stackoverflow.com/questions/5573431/getting-top-20-mysql-query-error) – RichardTheKiwi 2011-04-07 01:12:10

+0

你甚至检查了对你的其他问题的答案? – RichardTheKiwi 2011-04-07 01:12:24

回答

1

如果奖项尚未总额,那么你要查找的奖项,每个PI的总和,你需要使用SUM和GROUP BY PI,总结颁奖每个PI

SELECT SUM(award) AS totalAwards, pi, org 
FROM iis 
GROUP BY pi, org 
ORDER BY SUM(award) DESC 
LIMIT 20; 
+0

mdma - “总和”部分的好卡尔特^^上述帖子错过了这个。 – Jshee 2011-04-07 01:14:30

+0

需要一个'ORDER BY'子句,但你显然比我更了解这个问题:-) – Phil 2011-04-07 01:15:36

+0

你可能是最好的别名聚合列 – Phil 2011-04-07 01:24:05

0
SELECT award, pi, org 
FROM iis 
ORDER BY award DESC 
LIMIT 20;