对子查询的某个字段取MAX,取不到值

hugeo-coala 2017-02-25 11:05:59
语句很短,最外层取个MAX就总是空,想了好久就是搞不明白,请指导

SELECT MAX (PROVINCE_NAME) FROM
(
SELECT MAX (R.PROVINCE_NAME) AS PROVINCE_NAME, MAX(BINDID) AS BINDID FROM(
SELECT ID,PROVINCE_NAME,BINDID FROM BO_HT_MERGE
) R GROUP BY R.ID ORDER BY PROVINCE_NAME
) ;



子查询部分查出来结果是这样的,一共两条结果


如果把ORDER BY PROVINCE_NAME改成ORDER BY PROVINCE_NAME DESC就可以取到值
也就是这样:


或者把, MAX(BINDID) AS BINDID去掉也可以取到值,这样的:
...全文
270 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jdsnhan 2017-02-26
  • 打赏
  • 举报
回复
难道是工具的问题?在sqlplus下运行是什么效果
hugeo-coala 2017-02-26
  • 打赏
  • 举报
回复
这个问题很好复现,就建个表,三个字段即可 ,随便插入两个数据,执行一下一开始的那个SQL,就会发现是null


等待大神解惑
hugeo-coala 2017-02-26
  • 打赏
  • 举报
回复
引用 2 楼 jdsnhan 的回复:
难道是工具的问题?在sqlplus下运行是什么效果
在plsql下也是同样的结果,java代码里执行也是一样,应该不是工具的问题,真是奇了怪了
hugeo-coala 2017-02-25
  • 打赏
  • 举报
回复
真心纠结,第一次遇到这种问题,不明白为什么换一种排序方式就可以取到MAX,还请各位指点一下,感激

17,089

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧