1. oracle关于空值的优先值是最大的,所以按照倒叙排序的话,空值排在最前面
2. oracle原生的sql是可以直接排序空值的
nulls last:空值排在后面
nulls first:空值排在前面
例如
学生表中,根据学生的SNO倒序排序,SNO为空的放在最后面
select * from student t order by t.sno desc nulls last;
根据学生的SNO倒序排序,SNO为空的放在最前面
select * from student t order by t.sno desc nulls first
;
3.如果使用hibernate的hql查询
hibernate4.2.0及其以后的api支持nulls排序,之前的不支持。
所以早期的工程就没办法使用这个了,当然你可以在hibernate中创建createSqlQuery()使用原生的sql就可以了。