这个作业属于哪个课程 | https://edu.cnblogs.com/campus/uzz/cs3 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/uzz/cs3/homework/13074 |
这个作业的目标 | SQL语句的基本使用5-多值子查询 |
1.在student_info表中查找与“刘东阳”性别相同的所有学生的姓名、出生日期。
select 姓名,出生日期 from student_info
where 性别 = (select 性别 from student_info where 姓名='刘东阳');
2.使用IN子查询查找所修课程编号为0002、0005的学生学号、姓名、性别。
select 学号,性别,姓名 from student_info
where 学号 in (select 学号 from grade where 课程编号=0002 or 课程编号=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 all
select 学号,姓名 from student_info where 姓名 like "张%";
6.思考:delete 、drop、truncate区别,并总结。
DELETE:DELETE命令用于从表中删除行或记录,但并不删除表本身。可以根据条件选择要删除的数据。删除的行将被永久删除,无法恢复。
DROP:DROP命令用于删除数据库中的表、视图、索引等数据库对象。执行DROP命令后,对应的表结构将被完全删除,包括表的数据和定义。删除后无法恢复。
TRUNCATE:TRUNCATE命令用于删除表中的数据,但保留表的结构和定义。执行TRUNCATE命令后,表的数据将被立即清空,但表的结构、索引、约束等定义仍保留。TRUNCATE操作比DELETE操作更快,因为它不会逐行删除数据,而是直接截断表。删除后无法恢复。
总之,DELETE是删除表的行,DROP是删除整个表及其定义,TRUNCATE是清空表的数据。根据具体的需求和情况选择合适的操作命令。
7.整理课上关于多值子查询的例子,以笔记形式、或者视频讲授形式呈现。尽可能通俗易懂,不限于形式。
https://www.123pan.com/s/R6Omjv-JYdb3.html
标签:语句,分数,多值子,删除,姓名,info,student,SQL,where From: https://www.cnblogs.com/bc-ss/p/17767475.html