Oracle 左连接(left join) 排序问题

简介: 项目环境:linux、tomcat8.5、SSM框架、oracle11g 项目中一个列表查询,使用了左连接(left join),类似这样: select * from A left join B on A.

项目环境: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...

相关文章
|
1月前
|
SQL Oracle 关系型数据库
避坑,Oracle中left join 与 (+) 的区别
避坑,Oracle中left join 与 (+) 的区别
|
5月前
|
SQL Oracle 关系型数据库
本机不安装Oracle客户端,使用PL/SQL Developer连接远程数据库
本机不安装Oracle客户端,使用PL/SQL Developer连接远程数据库
142 0
|
6月前
|
Oracle 关系型数据库 流计算
Flink CDC不支持直接连接到Oracle ADG备库进行数据同步
Flink CDC不支持直接连接到Oracle ADG备库进行数据同步
110 1
|
1月前
|
Oracle Java 关系型数据库
SpringBoot整合Mybatis连接Oracle数据库
SpringBoot整合Mybatis连接Oracle数据库
SpringBoot整合Mybatis连接Oracle数据库
|
1月前
|
Oracle 关系型数据库 MySQL
Flink CDC产品常见问题之使用cdc-Oracle连接器报错如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
Flink CDC产品常见问题之使用cdc-Oracle连接器报错如何解决
|
3月前
|
SQL Oracle 关系型数据库
Oracle查询优化-left join、right join、inner join、full join和逗号的区别
【1月更文挑战第5天】【1月更文挑战第13篇】实际查询时,多表联查是常规操作,但是连接方式有多种。
74 0
|
3月前
|
Oracle 关系型数据库 数据库
Oracle查询优化-处理排序空值
【1月更文挑战第3天】【1月更文挑战第8篇】在处理Oracle查询结果排序时,如果涉及到空值(null),Oracle提供了一些特定的语法来帮助您控制排序的顺序。
28 0
|
3月前
|
Oracle 关系型数据库 索引
Oracle查询优化-按照子串排序
【1月更文挑战第2天】【1月更文挑战第4篇】有一种速查法就是按照一个字段的某一部分值的顺序记录,这样在查找的时候就可以快速缩小查询范围,例如按电话号码尾号查询。
29 1
|
4月前
|
SQL Oracle 关系型数据库
[已解决]使用sqlplus连接oracle,提示ORA-01034和ORA-27101
[已解决]使用sqlplus连接oracle,提示ORA-01034和ORA-27101
55 0
|
4月前
|
Oracle 小程序 关系型数据库
laravel5.8(十四)连接oracle数据库
首先确定你的PHP已经支持oracle数据库的链接。PHP需要安装OCI8扩展。 确定PHP可以链接ORACLE数据库之后。我们使用composer安装laravel支持oracle链接的插件 yajra/laravel-oci8 欢迎访问个人博客 guanchao.site 欢迎访问我的小程序:打开微信->发现->小程序->搜索“时间里的” 一:使用composer安装 yajra/laravel-oci8 1 :运行如下命令: bash 复制代码 composer require yajra/laravel-oci8 2 :安装过程中可能会报错,不要纠结那些报错,最简单的解决办法:
70 0