天天看點

sql 排序按修改時間,諾修改時間為空與建立時間比較

SELECT id,updated_time,created_time

FROM table

ORDER BY 

CASE  

WHEN IFNULL(updated_time,'')='' 

THEN created_time 

ELSE updated_time 

END 

DESC, created_time DESC;

     MYSQL  IFNULL(expr1,expr2)          

        如果expr1不是NULL,IFNULL()傳回expr1,否則它傳回expr2。

IFNULL()傳回一個數字或字元串值,取決于它被使用的上下文環境。          

mysql> select IFNULL(1,0);       -> 1      

mysql> select IFNULL(0,10);       -> 0      

mysql> select IFNULL(1/0,10);       -> 10      

mysql> select IFNULL(1/0,yes);       -> yes