当您在 oracle 9i 中按时间戳列排序时,为什么具有空值的列出现在具有值的列之前
我的 Oracle 9i 数据库有一个奇怪的行为。如果我进行如下查询:
select * from table order by dp_dt_timestamp DESC;
其中 dp_dt_timestamp 是时间戳列,则 dp_dt_timestamp 列中具有空值的行位于具有值的行之前。
如何将空值作为最后一个值,并且仍然使时间戳按降序排列?
I've got a strange behaviour with an Oracle 9i database. If i make a query like this:
select * from table order by dp_dt_timestamp DESC;
where dp_dt_timestamp is a timestamp column, rows which have null values in the column dp_dt_timestamp come before those that have a value.
How can i put the null values as the last values and still have the timestamps ordered Descending?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
order by dp_dt_timestamp DESC NULLS LAST
默认情况下,在对 ASC 进行排序时,NULL 排在最后,在对 DESC 进行排序时,NULL 排在最前面。
order by dp_dt_timestamp DESC NULLS LAST
By default NULLs come last when sorting ASC and first when sorting DESC.