码迷,mamicode.com
首页 > 数据库 > 详细

PostgreSQL order by 排序问题

时间:2018-05-23 18:58:52      阅读:1175      评论:0      收藏:0      [点我收藏+]

标签:pre   ase   html   字段   des   targe   doc   开始   stat   

默认的排序为order by 字段名,

如果该字段不允许为空的情况下可以这样操作,

但是当字段允许为null时,order by 字段名的方式会导致:

升序时(asc):

会从最小值开始升序,最后面接上字段值为null的值。

降序时(desc):

会把Null值作为最大值排在前面,显然这并不是我们想要的排序结果。

PostgreSQL提供 NULLS FIRST | ORDER BY 子句的最后一个关键字可以满足需要

... ORDER BY last_updated NULLS FIRST
SELECT last_updated 
    FROM your_table 
ORDER BY CASE WHEN last_updated IS NULL THEN 0 ELSE 1 END, 
         last_updated ASC;

 

PostgreSQL order by 排序问题

标签:pre   ase   html   字段   des   targe   doc   开始   stat   

原文地址:https://www.cnblogs.com/ryanzheng/p/9078210.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!