union 或者 union all 与 order by 的联合使用
2024-09-01 19:44:51
首先清楚:多个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
版权声明:本文为博主原创文章,转载请附上博文链接!
最新文章
- 配置子目录Web.config使其消除继承,用虚拟目录创建多个网站的方法
- AC日记——红与黑 codevs 2806
- javaweb学习总结(十九)——JSP标签
- PR 不能手动修改素材尺寸的解决方法
- QAQ
- 在meteor中如何使用ionic组件tabs,及如何添加使用cordova plugin inappbrower
- 使用Google Chart API绘制组合图
- 【HDOJ】1045 Fire Net
- zookeeper集群的安装
- Altium Designer (protel) 各版本“故障”随谈
- 团队作业4——第一次项目冲刺(Alpha版本)2017.4.22
- solr7.2安装实例,中文分词器
- Learning-Python【补充篇】:Python之可变类型与不可变类型
- 转:C#串口编程
- 51nod1057-N的阶乘(大数乘法巧解)
- Java并发:线程间数据传递和交换
- Mysql在Linux的基本操作文档
- mybatis-plus排除非表中字段
- 修改类不用重启Tomcat加载整个项目
- Java常用的排序算法三
热门文章
- servlet的ServletConfig接口
- clip-path 加边框border
- Angular 4 变更检测机制 ChangeDetectorRef 使用方法
- python smtp发邮件报错“[Errno -2] Name or service not known”的解决
- ORA-01000 error
- Java中有几种类型的流?
- HIVE了解及SQL基础命令
- tcp/ip的通俗讲述(转)
- nodejs模块——fs模块 读取文件
- C之输入输出函数(2) -- gets()