2016-03-11 50 views
3

我不是很喜歡數據庫,我有以下問題。如何在MySql中返回空值的情況下如何設置0?

我有這樣的查詢:

SELECT sum(intervento.IMP_IND_POS_AFF_MIN) 
FROM TID023_INTERVENTO intervento 
INNER JOIN TID018_ENTEBENEFICIARIO enteBeneficiario 
    ON(enteBeneficiario.COD_ENT = intervento.COD_ENT) 
INNER JOIN anagrafiche.TPG1029_PROVNUOIST provNuovIst 
    ON (provNuovIst.COD_PRV_NIS = enteBeneficiario.COD_PRV_NIS) 
WHERE intervento.COD_TIP_BAN=1 AND intervento.IMP_IND_POS_AFF_MIN is not null; 

此查詢工作正常,但是,你可以看到,它不檢索一組行,但返回由和獲得的數字( )功能。

這個數字在某些情況下可能是,在這種情況下,我不希望這個查詢返回(因爲它會在我的應用程序的問題),但在這種情況下,已經要返回的數值。

我知道,MySQL的提供IFNULL()函數做這樣的事情,在這裏參考:

http://www.w3schools.com/sql/sql_isnull.asp

但在這種exalmpe它用在單場桌子上。我如何在我的查詢輸出上做這樣的事情?

+0

嘗試case語句用0來替換爲空? – GabrielVa

+0

您的問題與鏈接中的情況有何不同? – HoneyBadger

+0

我相信問題是查詢可能根本沒有返回任何結果(前端看起來像是NULL) - 而不是它返回一個NULL值 –

回答

5

使用:

SELECT IFNULL(SUM(intervento.IMP_IND_POS_AFF_MIN), 0) 

這意味着IFNULL可以應用於通過在SUM它被施加到表字段相同的方式返回的值。

相關問題