首页 > 数据库 >SQL语句的基本使用5-多值子查询

SQL语句的基本使用5-多值子查询

时间:2023-10-18 17:14:41浏览次数:25  
标签:语句 分数 多值子 姓名 info student SQL where select

这个作业属于哪个课程 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

标签:语句,分数,多值子,姓名,info,student,SQL,where,select
From: https://www.cnblogs.com/lhc1/p/17768554.html

相关文章

  • Mysql 连接池配置问题
     使用SglSugar BulkCopy方法进行大批量插入时一直报错,检查了实体、数据库字段属性都无异常,最后发现数据库连接中配置了 AllowZeroDatetime=true;ConvertZeroDateTime= true;注释后异常解决。  AllowZeroDatetime=true,可以解决的是Mysql中datetime默认值为0000-00......
  • MySQL 是怎么加锁的
    MySQL是怎么加锁的什么SQL语句会加行级锁?普通select不会加锁,除非是串行化隔离等级。但是select...forupdate或者select...lockinsharemode加锁,统称为锁定读。还有updatedelete语句也会加锁行级锁有哪些种类?三种,分别是recordlock,gaplock,next-keylockrecordloc......
  • SQL语句的基本使用5-多值子查询
    这个作业属于哪个课程https://edu.cnblogs.com/campus/uzz/cs3这个作业要求在哪里https://edu.cnblogs.com/campus/uzz/cs3/homework/13074这个作业的目标SQL语句的基本使用5-多值子查询1.在student_info表中查找与“刘东阳”性别相同的所有学生的姓名、出生日......
  • debian12安装mysql5.7
    出于某些原因,不得不捏着鼻子在debian12上安装mysql5.7这里下载debian格式的包,选第一个bundle的安装步骤sudogdebi-nxxx安装的顺序commoncommon-clientclientcommon-serverserver......
  • mysql 运行没错,在mybatis中报错 druid 报错 syntax error, expect RPAREN, actual
    您遇到的问题可能是由于Druid版本较旧导致的。在Druid 1.0.19中,对于某些语法结构的处理存在一些限制和问题。针对您的具体情况,可以尝试以下解决方案:1. 确保SQL语句的括号匹配正确。错误消息"expect RPAREN, actual IDENTIFIER DAY"表明Druid期望一个右括号(RPAREN),但实际上......
  • SQL执行顺序,优化的禁止项,建议项
    SQL执行顺序,优化的禁止项建议项SQL执行顺序如下:1.FROM,(-includingJOIN)2.WHERE3.GROUPBY4.HAVING5.WINDOWfunctions6.SELECT7.DISTINCT8.UNION9.ORDERBY10.LIMITandOFFSET·语句性能应注意两个方面:1)数据流的流向;2)orderbylimit场景。从执行顺序......
  • MySQL 8.0.34 tar包安装踩坑记录
    环境概述操作系统:Centos7.9MySQL版本:8.0.34错误提示[[email protected]]#/soft/mysql/bin/mysqld--initialize--user=mysql--basedir=/soft/mysql--datadir=/soft/mysql/data/soft/mysql/bin/mysqld:/lib64/libstdc++.so.6:version`CXXABI_1.3.11'not......
  • Qt SQL API相关操作
    作者:苏丙榅链接:https://subingwen.cn/qt/qt-db/?highlight=sql来源:爱编程的大丙著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。另外,推荐野火关于sqlite 的文档:https://doc.embedfire.com/linux/qt/embed/zh/latest/ebf_qt/senior/qt_sqlite.html......
  • linux centos7 安装mysql
    home目录下新建安装包存放位置cdhomemkdirinstall_packetcd/home/install_packet下载mysql5.7rpm源wgethttp://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm安装下载好的rpm包rpm-ivhmysql57-community-release-el7-8.noarch.rpm安装mysqly......
  • sql游标
    --声明游标declaretest_Cursortable3CURSORFORselectSysNoFROM[MY_ParkMgmt].[dbo].[T_PK_IndustryProject]where[LandSysNo]isnull--打开游标OPENtest_Cursortable3--声明游标提取变量所要存放的变量declare@idint--定位游标到哪一行fetchnextfromtest_C......