sql查询成绩大于60分的同学 数据库怎么查询平均分大于80分的学生?

数据库怎么查询平均分大于80分的学生?1、第一首先在电脑上打开数据库软件。然后附加有学生表和成绩表的数据库。2、第二然后选中数据库,右键选择新建查询。在右边的空白框,输入命令select学生表.学号,

数据库怎么查询平均分大于80分的学生?

1、第一首先在电脑上打开数据库软件。然后附加有学生表和成绩表的数据库。

2、第二然后选中数据库,右键选择新建查询。在右边的空白框,输入命令select学生表.学号,avg(成绩)as平均分。

3、第三然后将学生表和成绩表关联起来。命令为from学生表join成绩表on学生表.学号=成绩表.学号

4、第四然后用group by命令对学生表中的学号进行分组。命令为group by学生表.学号。

5、第五然后用having命令。输出平均分大于80分的条件。

6、第六然后执行输入后的命令。在下面的效果栏就可以查看效果。

求解:sql数据库检索各科成绩均大于等于该科平均成绩的学生的学号和姓名?

至少得有两个表,一个是学生档案表,假如叫stu,字段包括:name,code,分别表示姓名、学号,一个是成绩表gra,字段包括:code,subid,num,分别表示学号,科目表主键,分数。因为查询结果不必展示科目名称,就不联查科目表了。

思路,先得到各科平均成绩,再查分数不小于平均成绩的学生。

查询语句如下:

select name,code

from stu

where code not in

(select gra.code from gra

left join (select subid,avg(num) as anum from gra group by subid) as g

on gra.subid=g.subid

where g.anum>gra.num)