我是靠谱客的博主 温柔泥猴桃,最近开发中收集的这篇文章主要介绍MySQL学习笔记(5)---子查询、union和limit,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

子查询

1、什么是子查询?

select语句中嵌套select语句,被嵌套的select语句称为子查询。

2、子查询都可以出现在哪里呢?

    select
        ..(select).
    from
        ..(select).
    where
        ..(select).

例:select ename,sal from emp where sal > (select min(sal) from emp);
select 
            t.*, s.grade
        from
            (select job,avg(sal) as avgsal from emp group by job) t
        join
            salgrade s
        on
            t.avgsal between s.losal and s.hisal;

union合并查询结果集

    select ename,job from emp where job = 'MANAGER'
    union
    select ename,job from emp where job = 'SALESMAN';
上面结果等同于select ename,job from emp where job = 'MANAGER' or job = 'SALESMAN';
union的效率要高一些。对于表连接来说,每连接一次新表,则匹配的次数满足笛卡尔积,成倍的翻。。 但是union可以减少匹配的次数。在减少匹配次数的情况下, 还可以完成两个结果集的拼接。

union在使用的时候有注意事项吗?
union在进行结果集合并的时候,要求两个结果集的列数相同。

limit分页符

limit作用:将查询结果集的一部分取出来。通常使用在分页查询当中。
limit怎么用呢
        完整用法:limit startIndex, length
        startIndex是起始下标,length是长度。
        起始下标从0开始。
         缺省用法:limit 5; 这是取前5.
  select ename,sal from emp order by sal desc limit 0,5;

关于DQL语句的大总结!!!!!!!!!!!!!!!!
    select 
        ...
    from
        ...
    where
        ...
    group by
        ...
    having
        ...
    order by
        ...
    limit
        ...
    
    执行顺序?
        1.from
        2.where
        3.group by
        4.having
        5.select
        6.order by
        7.limit..

最后

以上就是温柔泥猴桃为你收集整理的MySQL学习笔记(5)---子查询、union和limit的全部内容,希望文章能够帮你解决MySQL学习笔记(5)---子查询、union和limit所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(74)

评论列表共有 0 条评论

立即
投稿
返回
顶部