第5次作业-SQL语句的基本使用5-多值子查询

发布时间 2023-10-18 21:13:35作者: 神弑
这个作业属于哪个课程 https://edu.cnblogs.com/campus/uzz/cs3
这个作业要求在哪里 https://edu.cnblogs.com/campus/uzz/cs3/homework/13074
这个作业的目标 第5次作业-SQL语句的基本使用5-多值子查询

1.在student_info表中查找与“刘东阳”性别相同的所有学生的姓名、出生日期。

select 姓名,出生日期 from student_info  
where 性别=(select 性别 from student_info where 姓名='刘东阳' );

2.使用IN子查询查找所修课程编号为0002、0005的学生学号、姓名、性别。

select student_info.学号,姓名,性别 from student_info,grade
 where student_info.学号=grade.学号
 and 课程编号 in('0002','0005');

3.使用ANY子查询查找学号为0001的学生的分数比0002号的学生的最低分数高的课程编号和分数。

select 课程编号,分数 from grade
where 学号='0001' and 分数>any(select 分数 from grade where 学号='0002');

4.使用ALL子查询查找学号为0001的学生的分数比学号为0002的学生的最高成绩还要高的课程编号和分数。

select 课程编号,分数 from grade
where 学号='0001' and 分数>all(select 分数 from grade where 学号='0002');

5.使用UNION运算符针student_info表中姓“刘”的学生的学号、姓名与姓“张”的学生的学号、姓名返回在一个表中。

select 学号,姓名 from student_info
where 姓名 like '刘%' union
select 学号,姓名 from student_info
where 姓名 like '张%';

6.思考:delete 、drop、truncate区别,并总结。

相同点:

1、都有删除表的功能;

不同点:

1、delete、truncate仅仅删除表里面的数据;drop会把表的结构也删除掉;
2、delete是DML语句,操作完了,还可以回滚;truncate和drop是DDL语句,删除之后立即生效,不能回滚;
3、在执行效益上drop>truncate>delete;

7.整理课上关于多值子查询的例子,以笔记形式、或者视频讲授形式呈现。尽可能通俗易懂,不限于形式。

https://www.123pan.com/s/8leAjv-rIGeh.html