SQL语句|PTA题目集

R10-41 查询李勇选修了哪些课程,列出课程号

作者 李翔坤

单位 大连东软信息学院

查询李勇选修了哪些课程,列出课程号。
提示:请使用SELECT语句作答。

表结构:

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

create table if not exists Student(
  sno char(8)  primary key,
  sname varchar(10) not null,
  gender char(2) check(gender='男' or gender='女'),
  birthdate  date,
  major varchar(20)  default '软件工程'
  );
create table if not exists SC(    -- 选课成绩单表
  scid  int auto_increment  primary key,
  sno char(8)   references Student(sno),
  cno char(10)  references Course(cno),
  tno char(15)  references Teacher(tno),
  grade int check(grade>=0 and grade<=100),
  gpoint  decimal(2,1),     -- 学生得到的课程绩点
  memo  text(100)    --  备注
  );

表样例

Student表:
 

2a45e8d323a58f77efa1256e949f148.png


SC表:

1710602470551.png

输出样例:

1710602502414.png

 

select cno
from Student,SC
where Student.sno=SC.sno
    and sname like '李勇';

 R10-42 查询和李勇专业相同的其他学生信息

作者 李翔坤

单位 大连东软信息学院

查询和李勇专业相同的其他学生信息

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

表结构:

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

create table if not exists Student(
  sno char(8)  primary key,
  sname varchar(10) not null,
  gender char(2) check(gender='男' or gender='女'),
  birthdate  date,
  major varchar(20)  default '软件工程'
  );

表样例

Student表:

2a45e8d323a58f77efa1256e949f148.png

输出样例:

1710602924042.png

select sno,sname,gender,birthdate,major
from Student
where major=(select major
            from Student
            where sname like '李勇');

 R10-43 查询选修的各课程平均成绩高于85分的学生学号、姓名和专业

 

作者 李翔坤

单位 大连东软信息学院

查询选修的各课程平均成绩高于85分的学生学号、姓名和专业
提示:请使用SELECT语句作答。

表结构:

create table if not exists Student(
  sno char(8)  primary key,
  sname varchar(10) not null,
  gender char(2) check(gender='男' or gender='女'),
  birthdate  date,
  major varchar(20)  default '软件工程'
  );
create table if not exists SC(    -- 选课成绩单表
  scid  int auto_increment  primary key,
  sno char(8)   references Student(sno),
  cno char(10)  references Course(cno),
  tno char(15)  references Teacher(tno),
  grade int check(grade>=0 and grade<=100),
  gpoint  decimal(2,1),     -- 学生得到的课程绩点
  memo  text(100)    --  备注
  );

表样例

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

Student表:
 

2a45e8d323a58f77efa1256e949f148.png


SC表:

77d3bed64b621773469be6d4b1d0092.png

输出样例:

1710603245096.png

select Student.sno,sname,major
from Student
    join SC
    on Student.sno=SC.sno
group by sno
having avg(grade)>85;

 

R10-44 查询计算机科学专业刘晨选修课程的课程名

作者 李翔坤

单位 大连东软信息学院

查询计算机科学专业刘晨选修课程的课程名
提示:请使用SELECT语句作答。

表结构:

create table if not exists Student(
  sno char(8)  primary key,
  sname varchar(10) not null,
  gender char(2) check(gender='男' or gender='女'),
  birthdate  date,
  major varchar(20)  default '软件工程'
  );
create table if not exists SC(    -- 选课成绩单表
  scid  int auto_increment  primary key,
  sno char(8)   references Student(sno),
  cno char(10)  references Course(cno),
  tno char(15)  references Teacher(tno),
  grade int check(grade>=0 and grade<=100),
  gpoint  decimal(2,1),     -- 学生得到的课程绩点
  memo  text(100)    --  备注
  );
  create table if not exists Course(
  cno char(10) primary key,
  cname varchar(20) not null,
  ccredit int check(ccredit>0), -- 课程学分
  semester int check(semester>0),  -- 学期
  period int  check(period>0)     -- 总学时
  );

表样例

Student表:
 

2a45e8d323a58f77efa1256e949f148.png


SC表:
 

77d3bed64b621773469be6d4b1d0092.png


Course表:

image.png

输出样例:

1710603952879.png

 

select cname
from Course
where cno in(select cno
            from SC
            where sno in(
                    select sno
                    from Student
                    where sname like '刘晨'
                )
            )

R10-45 查询选修了张兵老师授课的学生学号、课程号和成绩 

作者 李翔坤

单位 大连东软信息学院

查询选修了张兵老师授课的学生学号、课程号和成绩
提示:请使用SELECT语句作答。

表结构:

create table if not exists Student(
  sno char(8)  primary key,
  sname varchar(10) not null,
  gender char(2) check(gender='男' or gender='女'),
  birthdate  date,
  major varchar(20)  default '软件工程'
  );

create table if not exists Teacher(
   Tno char(15) primary key,
   Tname varchar(10) not null,
   gender char(2),
   deptname varchar(50) ,  -- 所属系部
   title varchar(20)       -- 职称
);
select * from course;
create table if not exists Teacher(
   Tno char(15) primary key,
   Tname varchar(10) not null,
   gender char(2),
   deptname varchar(50) ,  -- 所属系部
   title varchar(20)       -- 职称
);
create table if not exists SC(    -- 选课成绩单表
  scid  int auto_increment  primary key,
  sno char(8)   references Student(sno),
  cno char(10)  references Course(cno),
  tno char(15)  references Teacher(tno),
  grade int check(grade>=0 and grade<=100),
  gpoint  decimal(2,1),     -- 学生得到的课程绩点
  memo  text(100)    --  备注
  );

表样例

Student``表: ![2a45e8d323a58f77efa1256e949f148.png](~/c0c7ab0a-045e-49fb-bd97-9df7338a86dd.png) Teacher表: ![1710605157636.png](~/34334c42-b229-48e0-817e-1b7141a8bada.png) ```Course表:
 

1710605210096.png


```SC``表:

77d3bed64b621773469be6d4b1d0092.png

输出样例:

1710604492375.png

select sno,cno,grade
from SC
where tno in (select tno
             from Teacher
             where tname like '张兵') 

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值