with temp as( select 'a' a from dual union all select 'b' a from dual union all select 'c' a from dual union all select 'd' a from dual union all select null a from dual union all select null a from dual union all select null a from dual ) select a from temp order by nvl(a,-1) desc
order by ... desc nulls last
ORDER BY 字段名 DESC null last
order by columname desc nulls last
ORDER BY 字段名 DESC nulls last SQL> select comm from emp order by comm desc nulls last; COMM ---------- 1400 500 300 0已选择14行。
order by column_name desc nulls last
order by xxx desc nulls last 或 order by decode(xxx,null,0,1) desc
select 'a' a from dual
union all
select 'b' a from dual
union all
select 'c' a from dual
union all
select 'd' a from dual
union all
select null a from dual
union all
select null a from dual
union all
select null a from dual
)
select a from temp order by nvl(a,-1) desc
SQL> select comm from emp order by comm desc nulls last; COMM
----------
1400
500
300
0已选择14行。