当前位置:首页 » 编程语言 » sql每门课分数80
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql每门课分数80

发布时间: 2023-05-31 07:50:49

㈠ 用sql查询出每门成绩都大于80分的学生姓名

代码如下:

  1. select name from stu where name not in(

  2. select name from stu where

  3. fenshu<=80 group by name having

  4. count(*)>=1) group by name

  5. 先查到任何一门不足80的学生,再排除这些学生。

㈡ 统计每门课程的选课人数和平均分,结果只显示平均分大于等于80的记录(使用T-SQL语句进行单表查询:)

select count(*),avg(分数)
from 表
having avg(分数)>=80

㈢ 用一条SQL语句,选取全部科目都在80以上的学生名单

select distinct 姓名 from 表名 as a1 where not exists (select * from 表名 as a2 where 成绩<80 and a1.姓名=a2.姓名)
用的是相关子查询,意思是找出所有成绩中不存在小于等于80分的学生的姓名,即全部成绩都在80分以上学生的姓名。

㈣ 用一条sql语句查询出每门课都大于80分的学生姓名

请给出具体的表格式和列名称。

没有具体表,不同人设计的表结构不同,查询语句也不同。
例:
表名称为grade,结构如下
id 姓名 数学 语文
1 张三 30 20
2 李四 80 90
3 王五 90 70
查询语句为
select * from grade where 数学>80 and 语文>80

㈤ sql语句 求每门课程的成绩都在80分以上的学生的学号

(1)
select sno from student where sno not in ( select sno from sc where grade<80 )
(2)
select distinct sno from sc where cno in (select cno from course where cteacher='程嫌岩氏军枣茄'芹散)

㈥ 一个成绩统计表 三个学生 每个学生两门成绩,写一个sql语句获得每门课成绩都大于80分学生的名字

SELECT D.name FROM (
SELECT S.name,S.score AS ITEM1,S1.score AS ITEM2,S2.score AS ITEM3
FROM Student S
inner join Student S1 on S.name = S1.name and S.course <> S1.course
inner join Student S2 on S.name = S2.name and S.course <> S2.course
WHERE S.score>=80 and S1.score>=80 and S2.score>=80
) D
GROUP BY D.name

㈦ 用一条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)

结果如下图:

(7)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);

结果与前面正文一样。

㈧ 1、 用一条SQL语句 查询出每门课都大于80分的学生姓名

selcet name,count(*)
from A
where fenshu>=80
group by name
Having count(*)=3
count是统计记录个数
group by是将此表的姓名一栏分组。
having就是集合函数了。