查询oracle sql聚合函数

时间:2014-06-29 10:41:04

标签: sql oracle function aggregate

我已经开始从1周开始学习sql数据库并且有关于聚合函数的查询。 我想使用两个学生添加标记,并希望将其总数按最小值排序到最大值

我试过了

SELECT student_name,min(sum(marks))
FROM STUDENTS a,STUDENT b
WHERE a.student_name=b.student_name
GROUP BY student_name

但我在第一行遇到错误 不是单组组功能

请告诉我什么是正确的代码..

2 个答案:

答案 0 :(得分:0)

试试这个

Select Student_name, min(marks)
from (
SELECT student_name,sum(marks) marks
FROM STUDENTS a,STUDENT b
WHERE a.student_name=b.student_name
GROUP BY student_name)
GROUP BY student_name

答案 1 :(得分:0)

除非您想要过滤,否则此查询似乎不需要join。 (并且,如果您使用join,则使用显式连接语法)。假设marks来自第二个表,我想你想要这样的东西:

SELECT s.student_name, sum(b.marks)
FROM STUDENT s
GROUP BY s.student_name
ORDER BY sum(b.marks);