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

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

时间:2023-10-21 10:46:59浏览次数:37  
标签:语句 分数 多值子 学号 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 s.学号,姓名,性别 from student_info s
where s.学号 in (select g.学号 from grade g where 课程编号='0002' or 课程编号='0005');

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

SELECT 课程编号 ,分数 FROM GRADE
WHERE 学号='0001' AND 分数 >some
(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)delete:delete 属于数据库操纵语言DML,表示删除表中的数据。
DELETE语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存以便进行进行回滚操作。
delete 既可以对table也可以对view,可以全部删除,也可以按条件删除。
(2)drop:drop 属于数据库定义语言DDL,表示删除表, 也可以用来删除数据库。
(3)truncate:truncate 属于数据库定义语言DDL,表示删除表中所有数据。
truncate 只能对table,执行速度快.

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

视频讲授->可发布于b站平台。
PDF笔记:请提供文件链接,建议上传123云盘、兰奏云等可以直接下载的平台。
https://www.bilibili.com/video/BV19Q4y1s7eM/?vd_source=fac38f160ec3f628d8918bd48e4c0e55

标签:语句,分数,多值子,学号,info,student,SQL,where,select
From: https://www.cnblogs.com/lty4515/p/17776417.html

相关文章

  • sql server 语句 的一些操作(千分位分隔、加百分号等)
    sqlserver语句的一些操作1、给filedName字段进行千分位分隔,保留两位小数如12345.4567会得到12,345.462、给字段filedName进行百分号显示3、根据字段的不同的值来输出不同的内容(判断)4、把时间格式按照2019-01-1214:23:18的格式显示请大家不断提意见,这里会把遇到的情况进行......
  • MySql 关键字 COALESCE
    MySQLCOALESCE()函数用于返回表达式列表中的第一个非空值。如果列表中的所有值均评估为NULL,则COALESCE()函数将返回NULL。COALESCE()函数接受一个参数,该参数是可以包含各种值的列表。MySQLCOALESCE()函数返回的值是表达式列表中的第一个非空值;如果列表中的所有值均为NULL,则为N......
  • MySql Json字段部分查询语法
    模糊匹配jsonObject字段select*fromtableNamewherecolumnName->'$.xx'like'%xx%'精确匹配jsonObject类型字段select*fromtableNamewherecolumnName->'$.xx'='xx'模糊匹配jsonArray字段select*fromtableNamewh......
  • MySQL学习(6)单表访问方法
    什么是访问方法MySQL执行查询语句的方式称为访问方法(accessmethod)。单表的访问方法有哪些const通过主键或唯一二级索引列定位一条记录的方法叫const,这种方法要求主键列或者唯一二级索引列与一个常数进行等值比较时才有效。注意,使用唯一二级索引且搜索条件为ISNULL无效。例......
  • web基础漏洞-sql注入测试
    sql注入的自动测试,为了便于处理,将其分为两个阶段分别处理,即漏洞测试发现和漏洞利用。前者更加普遍和重要。1、自动测试流程1.1选择业务和sql语句insertdeleteupdateselectwhereid=?selectwheretitlelike'?'selectwhereusername=?andpassword=?...1.2常用......
  • 无涯教程-Arduino - for语句函数
    for循环执行语句预定次数。forloop-语法for(initialize;control;incrementordecrement){//语句块}forloop-示例for(counter=2;counter<=9;counter++){//statements块将执行10次}forloop-执行序列参考链接https://www.learnfk.com/arduin......
  • Python 条件和 if 语句
    Python支持来自数学的通常逻辑条件:等于:a==b不等于:a!=b小于:a<b小于或等于:a<=b大于:a>b大于或等于:a>=b这些条件可以以多种方式使用,最常见的是在"if语句"和循环中使用。if语句是使用if关键字编写的。示例,if语句:a=33b=200ifb>a:print("bisgreate......
  • web基础漏洞-sql注入
    1、介绍sql注入,是目标网站提供了接口,使得攻击者可以从前端提交数据,然后未经过严格检查,被拼接到sql语句中,交给sql应用执行。从而导致恶意构造的payload破坏原有的sql语句结构,执行超预期的功能,造成危害。几乎所有的sql应用都存在sql注入漏洞,但一般讨论和测试时以mysql为主预编译......
  • web基础漏洞-sql注入绕过
    前提:确实存在sql注入,换句话说未使用预编译,绕过才有可能。这里阐述针对的是mysql语法。1、大小写混杂2、双写绕过如果服务端检查到敏感词,对其删除后继续执行。那么可以提交数据时进行双写绕过,比如selselectect,提交后变为select拓展来说,如果服务端最多检查n次,并且每次删除检查......
  • 无涯教程-Arduino - while语句函数
    while循环将连续且无限地循环,直到括号()中的表达式变为false为止,必须更改测试变量,否则while循环将永远不会退出。whileloop-while-语法while(expression){Blockofstatements;}whileloop-while-执行序列参考链接https://www.learnfk.com/arduino/arduino-w......