这个作业属于哪个课程 | https://edu.cnblogs.com/campus/uzz/cs3 | |
---|---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/uzz/cs3/homework/13074 | |
这个作业的目标 | SQL语句的基本使用5-多值子查询 |
在student_info表中查找与“刘东阳”性别相同的所有学生的姓名、出生日期。
mysql> select 姓名,出生日期 from student_info where 性别 =(select 性别 from student_info where 姓名='刘东阳');
使用IN子查询查找所修课程编号为0002、0005的学生学号、姓名、性别
mysql> select 学号,姓名,性别 from student_info where 学号 in(select 学号 from grade where 课程编号='0002' or 课程编号='0005');
使用ANY子查询查找学号为0001的学生的分数比0002号的学生的最低分数高的课程编号和分数。
mysql> select 课程编号,分数 from grade
-> where 学号='0001' and 分数>any(select min('分数') from grade where 学号='0002');
使用ALL子查询查找学号为0001的学生的分数比学号为0002的学生的最高成绩还要高的课程编号和分数。
mysql> select 课程编号,分数 from grade
-> where 学号='0001'and 分数>all(select max(分数) from grade where 学号='0002');
使用UNION运算符针student_info表中姓“刘”的学生的学号、姓名与姓“张”的学生的学号、姓名返回在一个表中。
mysql> select 学号,姓名 from student_info
-> where 姓名 like '刘%' union select 学号,姓名 from student_info where 姓名 like '张%';
delete 、drop、truncate区别,并总结。
detele 可用于删除表的一行或多行数据
drop用来删除数据库、表、索引、视图等对象
truncate的作用是清空表或者截断表,只能作用于表,但delete和drop可作用于视图,表等
truncate会清空表中的所有行,但表结构和约束,索引保持不变,drop删除表结构及其所依赖的约束和索引等
truncate会重置表的自增值,delete不会
truncate后会使表和索引所占的空间恢复到初始大小,delete不会减少表或索引所占用的空间,drop语句将表所占用的空间全部释放掉
整理课上关于多值子查询的例子,以笔记形式。
链接:https://pan.baidu.com/s/1k8xmYWUn12yqU6JrcJZrgA?pwd=xlox
提取码:xlox