本文共 479 字,大约阅读时间需要 1 分钟。
比如说:
select * from EMP order by COMM我需要对红框部分进行desc处理,也就是从大到小排列。
解析:
重点是如何让null独立出去。
select * from (select *,case when COMM is null then 0 else 1 end as COMMISNULL from EMP )xorder by COMMISNULL,COMM desc
解法:单独列出一列把null独立出去。
注意null的判断是 is而不是等于号
比如说:
select * from EMP
我希望的是:如果job 是SALESMAN的话,那么按照COMM排序,否则SAL 排序
解法:
在上面一个例子中,我们排行是通过排除某些行,对另外一个行进行处理。
而我们这个例子是针对列的,如果是针对列的那么更为简单。select *
from EMPorder by case when JOB='SALESMAN' then COMM else SAL end转载地址:http://bcskz.baihongyu.com/