mysql的coalesce使用技巧

今天无意间发现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值的话肯定是开发那个的错,个人观点请勿喷哈)。

 

posted @ 2017-05-25 14:09  周伯通之草堂  阅读(36068)  评论(0编辑  收藏  举报