在mysql中sum函數查出的最終結果為0的時候會顯示null,這時候就需要將null轉為0:
方法1:使用IFNULL(expr1,expr2)函數:
SELECT
IFNULL(sum(SS), 0.0) AS sum
FROM
fd_order fo2
WHERE
fo2.BUYER_ID = '11'
結果為:
方法2:
使用COALESCE(value,...) 函數:
SELECT
COALESCE(sum(SS), 0.00) as sum
FROM
fd_order fo2
WHERE
fo2.BUYER_ID = '11'
結果為:
方法3:使用 case when 函數進行判斷
SELECT
CASE WHEN ISNULL(sum(SS)) THEN 0
ELSE sum(SS) END as sum
FROM
fd_order fo2
WHERE
fo2.BUYER_ID = '11'
結果為:
備注:這三種方法的結果稍微有點不一樣,方法1和方法2的結果精確度可以在第二個參數中定義。
case when函數相當於一個判斷語句,返回的結果可以定義成0,也可以定義成其他字母甚至漢字。
————————————————
版權聲明:本文為CSDN博主「ZhuangYQ丶」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/iilegend/article/details/80363724