好比說:
select * from EMP order by COMMcode
我須要對紅框部分進行desc處理,也就是從大到小排列。blog
解析:排序
重點是如何讓null獨立出去。select
select * from (select *,case when COMM is null then 0 else 1 end as COMMISNULL from EMP ) x order by COMMISNULL,COMM desc
解法:單獨列出一列把null獨立出去。im
注意null的判斷是 is而不是等於號d3
好比說:db
select * from EMPimg
我但願的是:若是job 是SALESMAN的話,那麼按照COMM排序,不然SAL 排序co
解法:cas
在上面一個例子中,咱們排行是經過排除某些行,對另一個行進行處理。
而咱們這個例子是針對列的,若是是針對列的那麼更爲簡單。
select *
from EMP
order by case when JOB='SALESMAN' then COMM else SAL end