当前位置: 首页 > article >正文

【PTA】【数据库】【SQL命令】编程题1

数据库SQL命令测试题1

10-1 显示教工编号以02开头的教师信息

作者 冰冰 单位 广东东软学院

显示教工编号以02开头的教师信息

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

表结构:

CREATE TABLE teacher (  
TId CHAR(5) NOT NULL, -- 教师工号,主键  
DId CHAR(2) NULL, -- 系编号  
TName CHAR(8) NOT NULL, -- 姓名  
TSexy CHAR(2) NOT NULL, -- 性别  
TBdate DATE NOT NULL, -- 出生日期  
TField CHAR(50) NOT NULL, -- 研究领域  
TProf CHAR(10) NOT NULL, -- 职称  
TTele CHAR(16) NULL, -- 联系电话  
TQq CHAR(12) NULL, -- QQ号码  
TEmail CHAR(30) NULL, -- 邮箱  
TMsn CHAR(30) NULL, -- MSN  
PRIMARY KEY (TId)
);  

表样例

teacher表:

image.png

查询结果输出样例:

image.png

提交代码:

select * from teacher where TId like '02%';

10-2 65.显示上过李飞老师的课的学生的学号、姓名与联系电话

作者 宋光慧 单位 浙大宁波理工学院

本题目要求编写SQL语句,查询显示上过李飞老师的课的学生的学号、姓名与联系电话。

现有教务管理系统的关系描述如下:

  • 每个院系(部门)有多个班级和多名教师,每名教师各自开设有多门课程。
  • 每位教师管理多个班级(班主任),每个班级只能被一位老师管理。
  • 每名学生属于一个班级,可以选修多门课程。
  • 每门课程可被多位老师讲授,并且有些课程具有先导课程,每门课程的成绩由平时成绩、期中成绩、期末成绩组成,最终计算总评成绩。
  • 课程信息表供教师和学生查询,包含课程信息、任课教师、上课班级、上课教室、上课日期(周几)、上课时间(第几节课)、上课学期学年等信息。
  1. 学生表:student

    表结构

    student-1.png

    表数据

    student-2.png

  2. 课程表:course

    表结构

    course-1.png

    表数据

    course-2.png

  3. 选课表:sc

    表结构

    sc-1.png

    表数据

    sc-2.png

  4. 班级表:grade

    表结构

    grade-1.png

    表数据

    grade-2.png

  5. 院系(部门)表:dept

    表结构

    dept-1.png

    表数据

    dept-2.png

  6. 教师表:teacher

    表结构

    teacher-1.png

    表数据

    teacher-2.png

  7. 课程信息表:information

    表结构

    information-1.png

    表数据

    information-2.png

样例输出:

65.png

提交代码:

select SId,SName,STele from student
where Sid in (
    select Sid from sc where Cid in (
        select Cid from information where Tid in (
            select Tid from teacher where TName='李飞'
        ) 
    )
);

10-3 查询在2006年1月30日以后出生的学生的姓名、性别和出生日期

作者 马丰媛 单位 大连东软信息学院

题目描述:本题目要求编写SQL语句,查询在2006年1月30日以后出生的学生的姓名、性别和出生日期。

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

表结构:

student表结构:

create table 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表:

image.png

输出样例:

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

image.png

提交代码:

select sname,gender,birthdate from student where
birthdate > '2006-01-30' ;

10-4 查询没有选课的学生学号、姓名和班级

作者 邵煜 单位 宁波财经学院

本题目要求编写SQL语句,检索出students表和sc表中没有选课的学生学号和姓名。

提示:请使用嵌套查询语句作答。

表结构:

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

CREATE TABLE students (
 sno char(7) ,
  sname char(8) NOT NULL,
  class char(10),
  ssex char(2),
  bday date ,
  bplace char(10) ,
  IDNum char(18) ,
  sdept char(16),
  phone char(11),
  PRIMARY KEY (sno)
) ;

CREATE TABLE sc (
 sno char(7) ,
 cno char(7) ,
 score decimal(4,1),
 point decimal(2,1),
 PRIMARY KEY (sno,cno)
) ;

表样例

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

students表:

snosnameclassssexbdaybplaceIDNumsdeptphone
1311104李嘉欣13英语11994-05-28山西太原330204199405281056人文学院15900002211
1311105苏有明13英语11995-04-16内蒙古包头330204199504162036人文学院15900002222
1711101赵薇17物流11999-02-11安徽合肥330203199902110925经管学院15900001177
1711102董洁17物流11999-02-17上海330203199902170017经管学院15900001188

sc表:

snocnoscorepoint
1311104000001153.00.0
1311104000002780.01.0
1311105000002784.01.0
1711101000005271.02.0

输出样例:

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

snosnameclass
1711102董洁17物流1

提交代码:

select sno,sname,class from students 
where sno in
(select sno from students 
 where not exists (
     select * from sc 
     where sc.sno = students.sno
 ));

10-5 查询考试成绩不及格的学生学号

作者 马丰媛 单位 大连东软信息学院

题目描述:本题目要求编写SQL语句,查询考试成绩不及格的学生学号。

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

表结构:

sc表结构:

create table 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)    --  备注
  );

表样例

sc表:

image.png

输出样例:

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

image.png

提交代码:

select sno from sc
where grade < 60;

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

作者 李翔坤 单位 大连东软信息学院

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

提示:请使用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 = '刘晨' and major = '计算机科学'
    )
);

10-7 查询选修C01课且成绩高于此课程平均成绩的学生姓名

作者 李翔坤 单位 大连东软信息学院

题目描述:查询选修C01课且成绩高于此课程平均成绩的学生姓名。

提示:请使用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 '软件工程'
  );
 select * from student;
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)     -- 总学时
  );
 
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

Course表:

81bf4338b3b82b4db381583a1c5c7a4.png

Teacher表:

489d0c1883a2a431cb312618d00be43.png

SC表:

77d3bed64b621773469be6d4b1d0092.png

输出样例:

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

1710605331855.png

提交代码:

select sname from Student
where sno in (
    select sno from SC
    where cno = 'c01' and grade > (
        select avg(grade) from SC
        where cno = 'c01'
    )
);

10-8 查询学生选修课程的平均成绩高于75分的课程号

作者 马丰媛 单位 大连东软信息学院

题目描述:查询学生选修课程的平均成绩高于75分的课程号。

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

表结构:

SC表结构的SQL语句:

create table  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) 
  );

表样例

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

SC表:

image.png

输出样例:

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

image.png

提交代码:

select cno from SC
group by cno
having avg(grade) > 75 ;

10-9 查询教授多门课程的教师编号及教授的课程门数

作者 马丰媛 单位 大连东软信息学院

题目描述:查询教授多门课程的教师编号及教授的课程门数。

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

表结构:

SC表结构:

create table  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) 
  );

表样例

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

SC表:

image.png

输出样例:

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

image.png

提交代码:

select tno , count(distinct(cno)) as '门数'
from SC
group by tno
having count(distinct(cno)) > 1 ;

10-10 求各个课程号及相应的选课人数

作者 马丰媛 单位 大连东软信息学院

题目描述:求各个课程号及相应的选课人数。

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

表结构:

SC表结构的SQL语句:

create table  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) 
  );

表样例

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

SC表:

image.png

输出样例:

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

image.png

提交代码:

select cno , count(sno) as '人数'
from SC
group by cno ;

10-11 查询每名学生的选课门数和平均成绩

作者 马丰媛 单位 大连东软信息学院

题目描述:查询每名学生的选课门数和平均成绩。

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

表结构:

SC表结构的SQL语句:

create table  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) 
  );

表样例

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

SC表:

image.png

输出样例:

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

image.png

提交代码:

select sno , count(*) as '数量' , avg(grade) as '平均成绩'
from SC
group by sno;

10-12 SQL除法查询4

作者 沈炜 单位 浙江理工大学

求包含订单号(order_num)20005的所有产品的订单的订单号

CREATE TABLE orderitems
(
  order_num  int          NOT NULL ,
  order_item int          NOT NULL ,
  prod_id    char(10)     NOT NULL ,
  quantity   int          NOT NULL ,
  item_price decimal(8,2) NOT NULL ,
  PRIMARY KEY (order_num, order_item)
) 

表样例

Orderitems表:

order_numorder_itemprod_idquantityitem_price
200051ANV01105.99
200052ANV0239.99
200053TNT2510
200054FB110
200061JP2000155
200071TNT210010
200081FC502.5
200091FB110
200092OL118.99
200093SLING14.49
200094ANV03114.99

输出样例:

这里是结果:

order_num
20005

提交代码:

select distinct(order_num)
from orderitems o1
where not exists(
    select *
    from orderitems o2
    where o2.order_num = 20005 and not exists(
        select *
        from orderitems o3
        where o3.order_num = o1.order_num and o3.prod_id = o2.prod_id
    )
);

100 | 10 |
| 20008 | 1 | FC | 50 | 2.5 |
| 20009 | 1 | FB | 1 | 10 |
| 20009 | 2 | OL1 | 1 | 8.99 |
| 20009 | 3 | SLING | 1 | 4.49 |
| 20009 | 4 | ANV03 | 1 | 14.99 |

输出样例:

这里是结果:

order_num
20005

提交代码:

select distinct(order_num)
from orderitems o1
where not exists(
    select *
    from orderitems o2
    where o2.order_num = 20005 and not exists(
        select *
        from orderitems o3
        where o3.order_num = o1.order_num and o3.prod_id = o2.prod_id
    )
);

本文作者:鸿·蒙

文档工具:Typora

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 鸿·蒙 !


http://www.kler.cn/a/406914.html

相关文章:

  • Kafka - 消费者程序仅消费一半分区消息的问题
  • VSCode【下载】【安装】【汉化】【配置C++环境】【运行调试】(Windows环境)
  • Python中Tushare(金融数据库)入门详解
  • HarmonyOS . 沉浸状态栏使用
  • 了解Redis(第一篇)
  • 跟李笑来学美式俚语(Most Common American Idioms): Part 29
  • 【大数据学习 | Spark-Core】Spark的改变分区的算子
  • 【Bluedroid】A2DP SINK播放流程源码分析
  • Python 开发工具 -- PyCharm 简介
  • Cmakelist.txt之Liunx-rabbitmq
  • 【海思Hi3519DV500】双目网络相机套板硬件规划方案
  • ansible playbook安装nacos
  • 华为HCCDA云技术认证--分布式云架构
  • 【论文笔记】LLaVA-o1: Let Vision Language Models Reason Step-by-Step
  • FastApi教程
  • 力扣 76. 最小覆盖子串
  • Java项目部署的三个阶段:java -jar、Docker和Kubernetes
  • 【H2O2|全栈】JS进阶知识(六)ES6(2)
  • HAL库的简单介绍以及环境搭建
  • 《生成式 AI》课程 作业6 大语言模型(LLM)的训练微调 Fine Tuning -- part2
  • 【环境配置】ubuntu下的保持程序一直运行
  • 【工具变量】上市公司企业信贷可得性数据(2000-2022年)
  • Unity图形学之CubeMap立方体贴图
  • 装饰器模式 (Decorator Pattern)
  • 设计模式-创建型-单例模式
  • ssm面向品牌会员的在线商城小程序