为什么 下面两个结果一样;

为什么
select * from emp where rownum=1 order by sal desc(或者asc);无论升序或者降序得到的结果都一样啊!

5个回答

sal这个字段是不是都是一样的?

q7118559
q7118559 sal是工资啊
接近 6 年之前 回复

rownum在哪里定义的
sal是什么类型的数据

系统是按照记录插入时的顺序给rownum排的号,也就是rownum在orderby前产生
select * from(select * from emp order by sal desc) where rownum=1

sal字段的数据都一样吧。

参考
oracle中的rownum、order by与分页
这篇文章用的就是你的表和例子,提到了索引字段和非索引字段排序中因Oracle内部优化而导致rownum返回不同的值。希望有助于你理解问题的原因。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐