SQL那里错了

来源:百度知道 编辑:UC知道 时间:2024/06/24 01:56:16
select course.courseid,course.coursename,sum(b.ascore),max(b.ascore),avg(sum(b.ascore))
from score a,scoreitem b,course
where (a.testid=b.testid and(a.adate>='2008-1-1' and a.adate<='2008-6-30'))
order by courseid asc

select course.courseid,course.coursename,sum.*
from
(select sum(b.ascore),max(b.ascore),avg(sum(b.ascore))
from score a,scoreitem b
where a.testid=b.testid and a.adate>='2008-1-1' and a.adate<='2008-6-30') sum,course
order by course.courseid asc

少group by语句
group by course.courseid,course.coursename
而且avg(sum(b.ascore)) 应该也是错的
直接avg(b.ascore)就可以了

select course.courseid,course.coursename,sum(b.ascore),max(b.ascore),avg(b.ascore)
from score a,scoreitem b,course
where a.testid=b.testid and a.adate>='2008-1-1' and a.adate<='2008-6-30'
group by course.courseid,course.coursename
order by courseid asc