子查询(三步走)
1、子查询(嵌套查询)的介绍
在一个 select 语句中,嵌入了另外一个 select 语句, 那么被嵌入的 select 语句称之为子查询语句,外部那个select语句则称为主查询.
select * from (select * from xxx) as t;
主查询和子查询的关系:
了解:子查询的应用场景
答:在我们需求的基础上,如果这个需求需要通过多条SQL语句分步查询的情况,一般都需要基于子查询。
2、子查询的使用
例1. 查询学生表中大于平均年龄的所有学生:
需求:查询年龄 > 平均年龄的所有学生
前提:
① 获取班级的平均年龄值
② 查询表中的所有记录,判断哪个同学 > 平均年龄值
第一步:写子查询
第二步:写主查询
第三步:第一步和第二步进行合并
例2. 查询tb_goods产品表中具有分类信息的产品
需求:查询产品表中具有分类信息的产品(没有与之对应分类信息的产品不显示)
前提:
① 查询分类表中,到底有哪些分类(获取cid编号)
② 到产品表中进行判断,判断这个商品的cid编号与①中的是否相等
第一步:编写子查询
第二步:编写主查询
第三步:把主查询和子查询合并
例3. 查找年龄最小且成绩最低的学生:
第一步:获取年龄最小值和成绩最小值
第二步:查询所有学员信息(主查询)
第三步:把第一步和第二步合并
注:数据表中必须有这样一条记录,否则可能查询不到结果,重点练习子查询返回多个结果情况。
3、小结
子查询是一个完整的SQL语句,子查询被嵌入到一对小括号里面
掌握子查询编写三步走
外键(扩展)
主键:primary key
外键:foreign key(应用场景:在两表或多表关联的时候设置的,用于标志两个表之间的联系)
1、外键约束作用
外键约束:对外键字段的值进行更新和插入时会和引用表中字段的数据进行验证,数据如果不合法则更新和插入会失败,保证数据的有效性。
dage表:
xiaodi表:
外键设计原则:保证两张表的关联关系,保证数据的一致性。在选择时,一般在一个表中时关联字段,在另外一个表中是主键,则这个字段建议设置为外键。
2、对于已经存在的字段添加外键约束
3、在创建数据表时设置外键约束
4、删除外键约束
索引[了解]
1、索引概述
索引作用: 快速检索数据. (提高查询效率),其底层主要是使用B+ Tree结构
2、普通索引使用
3、唯一索引使用
4、索引使用注意
开窗函数(mysql 8.0后新的)
1、数据准备
2、开窗函数使用
到此这篇mysql窗口函数用法(mysql窗口函数 是用来干嘛)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/haskellbc/74189.html