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

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

时间:2023-10-18 16:45:15浏览次数:39  
标签:语句 分数 多值子 姓名 info student SQL where select

这个作业属于哪个课程 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 课程编号 in('0002','0005'));

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

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

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

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

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

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

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

delete:
用于删除表中的特定行或满足特定条件的记录;操作是逐行进行的,可以根据条件选择要删除的数据。

drop:
不仅能删除表中的数据,而且还能删除表结构;操作是针对整个对象进行的,将对象及其相关的结构和数据完全删除。

truncate:
截断表,只删除表中的数据行,而不删除表结构;操作是一次性删除整个表的数据,比逐行删除更高效。

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

https://www.123pan.com/s/N0hhjv-l4DWv.html

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

相关文章

  • 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......
  • 【MySQL】DATE_FORMAT,DATE_ADD函数用法
    一、示例1select*frombi.testwhereDATE_FORMAT(UPDATE_TIME,'%Y-%m-%d')='2023-09-11';当然 '%Y-%m-%d'是可以根据实际需求调整的  二、示例22.1给时间增加一小时UPDATEbi.testSETUPDATE_TIME=DATE_ADD(UPDATE_TIME,INTERVAL1HOUR);2.2给时间减少......
  • 图文结合丨Prometheus+Grafana+GreatSQL性能监控系统搭建指南(下)
    一、环境介绍本文环境,以及本文所采用数据库为GreatSQL8.0.32-24$cat/etc/system-releaseRedHatEnterpriseLinuxServerrelease7.9(Maipo)$uname-aLinuxgip3.10.0-1160.el7.x86_64#1SMPTueAug1814:50:17EDT2020x86_64x86_64x86_64GNU/Linux$ldd--......
  • SQL语句的基本使用5-多值子查询
    这个作业属于哪个课程https://edu.cnblogs.com/campus/uzz这个作业要求在哪里https://edu.cnblogs.com/campus/uzz/cs3/homework/13036这个作业的目标SQL语句的基本使用5-多值子查询1.在student_info表中查找与“刘东阳”性别相同的所有学生的姓名、出生日期。......