项目环境:linux、tomcat8.5、SSM框架、oracle11g
项目中一个列表查询,使用了左连接(left join),类似这样:
select * from A left join B on A.xx=B.xx(A是个视图,视图内是有order by的)
在PL/SQL中查询的结果集排序同A表,但项目部署到服务器后,排序却乱了,确认A表使用了order by,排序无问题,那么可能问题就出在left join了,网上查了查,大概知道了,左连接后,如果没有强制排序,那么默认是先按B表排序,再按A表倒序
如果想默认按A表排序,可以在on后面加上一个条件“1=1”
select * from A left join B on 1=1 and A.xx=B.xx试了下,确实管用
这里写出来给遇到同样问题的人,希望有所帮助,也希望有明白原理的大神,看到后可以留言说明,万分感谢!
最后附上解决我问题的帖子:http://www.itpub.net/forum.php?mod=viewthr...
继续阅读与本文标签相同的文章
上一篇 :
Java同步:synchronized解析
下一篇 :
Linux rsyslog 简记
-
maven常用命令
2026-05-19栏目: 教程
-
Java常用命令之jstat
2026-05-19栏目: 教程
-
阿里云第六代云服务器实例类型、特性及可选区域介绍
2026-05-19栏目: 教程
-
Greenplum6单机安装攻略
2026-05-19栏目: 教程
-
.git文件夹探秘,理解git运作机制
2026-05-19栏目: 教程
