今天無意間發現mysql的coalesce,
coalesce()解釋:返回參數中的第一個非空表達式(從左向右依次類推);
使用示例:a,b,c三個變量。
select coalesce(null,2,3); // Return 2
select coalesce(null,null,3); // Return 3
select coalesce(1,2,3); // Return 1
通過上面例子可以看出,他的作用是將返回傳入的參數中第一個非null的值,再比如
SELECT COALESCE(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
-- Return 1
如果傳入的參數所有都是null,則返回null,比如
SELECT COALESCE(NULL, NULL, NULL, NULL);
-- Return NULL
這個參數使用的場合為:假如某個字段默認是null,你想其返回的不是null,而是比如0或其他值,可以使用這個函數
SELECT COALESCE(字段名,0) as value from t;//(如果數據庫提成字段默認值不是為0值的話肯定是開發那個的錯,個人觀點請勿噴哈)。
