SQL中的排序中的排序

SQL中的排序中的排序
任务表,有个需求,排序按照重要程序排序,在重要的任务里按照更新时间来排序,然后在不重要的任务里按照ID来排序,解决如下:



select a.id,a.title,a.isimport,a.updatetime from (
    select * from mubiaos where isimport=1 
    union
    select * from mubiaos where isimport=0 
) a
order by 
    a.isimport desc, 
    case 
        when isimport=1 then updatetime 
    end desc,
    case
        when isimport=0 then id
    end asc

发现这样的话就用不着那个union了。。呵呵