zoukankan      html  css  js  c++  java
  • union 或者 union all 与 order by 的联合使用

    首先清楚:多个select 语句 union 时不是简单的将查询结果拼接起来 而是将sql拼接起来编译(做为一个sql语句),然后去执行。

    注:

    union 连接的语句中只会出现一个order by (不包含子查询中的)否则会报  sql未正确结束的错误。

    解决方法:

    将order by 语句放到子查询中

    例子:

    1、将排序后的查询结果拼接起来
    select * from(select  *  from table order by a)

    union

    select * from (select * from table1 order by b)

    union

    select * from (select * from table2 order by c);

    2、将排序后的查询结果拼接起来,再排序

    select * from(select  *  from table order by a)

    union

    select * from (select * from table1 order by b)

    union

    select * from (select * from table2 order by c)

    order by d;----此处的order by 是将最后的拼接结果集排序  打乱了之前通过 a、b、c的排序。
    ---------------------
    作者:搬长城的红砖
    来源:CSDN
    原文:https://blog.csdn.net/yin_jia_521/article/details/65990413
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    uniapp开发注意事项
    uniapp生成海报带二维码及保存
    严格模式的this
    数据类型
    短路特性
    第九周程序改错
    矩阵转置
    二分法求根
    三天打鱼两天晒网
    LeetCode7
  • 原文地址:https://www.cnblogs.com/kakaisgood/p/11102704.html
Copyright © 2011-2022 走看看