㈠ 用一条sql语句查询出每门课都大于80分的学生姓名
请给出具体的表格式和列名称。
没有具体表,不同人设计的表结构不同,查询语句也不同。
例:
表名称为grade,结构如下
id 姓名 数学 语文
1 张三 30 20
2 李四 80 90
3 王五 90 70
查询语句为
select * from grade where 数学>80 and 语文>80
㈡ SQL查询2门以上课程成绩不低于80分的学生的学号、以及不低于85分的课程的门数。
您好:
您这个需求有点复杂,时间缘故没有测试。
如果有异常,请联系我,我回家重新给您看看。
以下是SQL代码
SELECT Student.sno,(SELECT COUNT(*) FROM grade g WHERE g.sno=Student.sno AND grade>=85 )
FROM Student
LEFT JOIN Score ON Score.sno=Student.sno
LEFT JOIN Course ON Course.cno=Score.cno
WHERE grade>=80
GROUP BY Student.sno
HAVING COUNT(*)>2
㈢ 用sql代码查询课程成绩大于80分的所有学生成绩
Select ID,学生姓名,成绩 from 表名 where 成绩>80
得到的就是成绩大于80分的所有人以及成绩
㈣ 查询平均成绩大于80分的课程的名字和学分.SQL语句查询,跪求高人指点!我积分不多,这次都悬赏出去了
你没有加上where子句.
select cname,credit
from sc
join course on sc.cno=course.cno
where ...
group by cname
having avg(grade)>80
㈤ 用一条sql语句查询出“每门”课程都大于80分的学生姓名
首先需要进行分析:
要查询出每门课程都大于80分的学生姓名,因为一个学生有多门课程,所以会出现下面三种情况。
第一可能所有课程都大于80分。
第二可能有些课程大于80分,另外一些课程少于80分。
第三也可能所有课程都小于80分。
那么我们要查找出所有大于80分的课程的学生姓名,我们可以反向思考,找出课程小于80分(可以找出有一些课程小于80分,所有课程小于80分的学生)的学生姓名再排除这些学生剩余的就是所有课程都大于80分的学生姓名了。
分析完成后,进入数据图形化管理界面创建表并插入数据
--创建表aa
create table aa(
name varchar(10),
kecheng varchar(10),
fengshu int
)
--插入数据到表aa中
insert into aa values('张三','语文',81)
insert into aa values('张三','数学',75)
insert into aa values('李四','语文',76)
insert into aa values('李四','数学',90)
insert into aa values('王五','语文',81)
insert into aa values('王五','数学',100)
insert into aa values('王五','英语',90)
用一条SQL语句查询出每门课都大于80分的学生姓名
select distinct name from aa where name not in (select distinct name from aa where fengshu<=80)
结果如下图:
(5)sql查询课程大于80分的科目扩展阅读:
除了用distinct还可以用not in 或者 not exists 实现
//not in
SELECT DISTINCT A.name FROM Student A WHERE A.name not in(SELECT Distinct S.name FROM Student S WHERE S.score <80);
//not exists
SELECT DISTINCT A.name From Student A where not exists (SELECT 1 From Student S Where S.score <80 AND S.name =A.name);
结果与前面正文一样。
㈥ 用一条SQL语句,查询出每门课都大于80分的学生姓名
select name from stu where name not in(
select name from stu where
fenshu<=80 group by name having
count(*)>=1) group by name先查到任何一门不足80的学生,再排除这些学生
㈦ sql语句在学生表中查询4号同学成绩高于80分的课程号
原来多表联合查询还可以用列与列之间进行比较。联合百查询后,在where用选度课表的成绩列 大于 选课表平均成绩。
student为学生问表,答class为课程表,selectclass为选课关系表。
select * from selectclass as t1,
(select avg(sc.classreult)as pingjun,sc.classID from selectclass as sc group by classid )as t2
where t1.classID=t2.classID and t1.classReult>t2.pingjun
㈧ 用一条SQL语句,选取全部科目都在80以上的学生名单
select distinct 姓名 from 表名 as a1 where not exists (select * from 表名 as a2 where 成绩<80 and a1.姓名=a2.姓名)
用的是相关子查询,意思是找出所有成绩中不存在小于等于80分的学生的姓名,即全部成绩都在80分以上学生的姓名。
㈨ SQL怎么查出三门课程都大于80的学员
--返回学号。如果需要姓名,再连接学生表
select sno
from sc
where score > 80
group by sno
having count(*) = 3