sql多表查询,希望各位指点一下我。

本题目要求编写SQL语句,查询选修人数超过2人且成绩都在60分以上的课程的课程名、最高成绩、最低成绩和平均成绩。

提示:请使用SELECT语句作答。

表结构:
请在这里写定义表结构的SQL语句。例如:

CREATE TABLE major (
mno char(2) NOT NULL,
mname varchar(20) NOT NULL,
PRIMARY KEY (mno)
);
CREATE TABLE stu (
sno char(4) NOT NULL,
sname char(8) NOT NULL,
sex tinyint(1) DEFAULT NULL,
mno char(2) DEFAULT NULL,
birdate datetime DEFAULT NULL,
memo text,
PRIMARY KEY (sno),
KEY fk_stu_mno (mno),
CONSTRAINT fk_stu_mno FOREIGN KEY (mno) REFERENCES major (mno)
);

CREATE TABLE cou (
cno char(4) NOT NULL,
cname varchar(30) NOT NULL,
credit smallint(6) DEFAULT NULL,
ptime char(5) DEFAULT NULL,
teacher char(10) DEFAULT NULL,
PRIMARY KEY (cno)
);

CREATE TABLE sc (
sno char(4) NOT NULL,
cno char(4) NOT NULL,
grade decimal(6,1) DEFAULT NULL,
PRIMARY KEY (sno,cno),
KEY fk_sc_cno (cno),
CONSTRAINT fk_sc_cno FOREIGN KEY (cno) REFERENCES cou (cno),
CONSTRAINT fk_sc_sno FOREIGN KEY (sno) REFERENCES stu (sno)
)

表样例
请在这里给出上述表结构对应的表样例。例如

stu表:

img

major表:

img

cou表:

img

sc表:

img

输出样例:
请在这里给出输出样例。例如:

img

我的答案

select cou.cno 课程号,cname 课程名,max(grade) 最高成绩,min(grade) 最低成绩,avg(grade) 平均成绩
from cou left join sc on(cou.cno=sc.cno)
where grade>60
group by cou.cno
having count(sno)>2