我不是很喜欢数据库而且我有以下问题。
我有这样的查询:
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;
此查询工作正常,但正如您所看到的,它不会检索一组行但返回由 sum()函数获取的数字。
在某些情况下,这个数字可能是 null ,在这种情况下我不希望此查询返回 null (因为它在我的应用程序中产生问题)但在这种情况必须返回数值 0 。
我知道MySql提供了一个 ifnull()函数来做这样的事情,这里的参考文献:
http://www.w3schools.com/sql/sql_isnull.asp
但在这个exalmpe中,它用在桌子上的单个字段上。如何在查询输出中执行此类操作?
答案 0 :(得分:7)
使用:
SELECT IFNULL(SUM(intervento.IMP_IND_POS_AFF_MIN), 0)
这意味着IFNULL
可以应用于SUM
返回的值,其方式与应用于表字段的方式相同。
答案 1 :(得分:3)