我已经开始从1周开始学习sql数据库并且有关于聚合函数的查询。 我想使用两个学生添加标记,并希望将其总数按最小值排序到最大值
我试过了
SELECT student_name,min(sum(marks))
FROM STUDENTS a,STUDENT b
WHERE a.student_name=b.student_name
GROUP BY student_name
但我在第一行遇到错误 不是单组组功能
请告诉我什么是正确的代码..
答案 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);