MySQL子查询介绍\分页查询\联合查询

MySQL子查询介绍\分页查询\联合查询

子查询介绍

I、含义:出现在其他语句中的select‘语句,成为子查询或内查询,外部的查询语句成为著查询或外查询。
II、分类:(一)、按子查询出现的位置:一、select后面:仅仅支持标量子查询
             二、from后面支持表子查询:将子查询的结果充当一张表,要求必须起别名
             三、where或having后面:
             1、标量子查询(单行子查询)
             特点:i、子查询放在小括号内
                ii、子查询一般放在条件右侧
                iii、标量子查询:一般搭配单行操作符使用
                  单行操作符(条件运算符):>,<,<=,>=,<>
                  列子查询:一般搭配多行操作符使用
                  多行操作符:in,any,some,all
在这里插入图片描述

iv、子查询的执行优先于主查询执行,主查询的条件用到了子查询的结果(即先执行子查询,后执行主查询)
             2、列子查询(多行子查询)
             3、行子查询(结果集为一行多列或多行多列
            四、exists后面(相关子查询):表子查询(较少使用)
                          语法:exists(完整的查询语句)
                          结果:1或0
  (二)、按结果集的行列数不同:标量子查询(结果集只有一行一列)
                 列子查询(结果集只有一列多行)
                 行子查询(结果集只有一行多列)
                 表子查询(结果集一般为多行多列或一行多列)

分页查询

应用场景:当前显示的数据,一页显示不全,需要分页提交sql请求
语法:select 查询列表 from 表 【join type join 表2 on 连接条件 where 筛选条件 group by 分组字段 order by 排序字段】limit 【offset,】size;
   offset:要显示条目的起始索引,起始索引从0开始
   size:要显示的条目个数
特点:1、limit语句放在查询语句的最后(语法和执行)
   2、公式:要显示的页数page,每页的条目数size
        select 查询列表 from 表 limit (page-1)*size,size;
        例:size=10
          page:1     0
             2     10
             3     20
              ·······

联合查询

一、应用场景:要查询的结果来自于多个表,且多个表没有直接的连接关系,但查询的信息一致时用union
二、union(联合、合并):将多条查询语句的结果合并成一个结果
三、语法:查询语句1 union 查询语句2 union ······
四、特点:1、要求多条查询语句的查询列表数一致
   2、要求多条查询语句的查询的每一列的类型和顺序最好一致
   3、union关键字默认去重,如果使用union all可以包括重复项

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值