我不是那么进入数据库,我有以下问题.
我有这样的查询:
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
但在这个夸张中,它被用在桌子上的单个场地上.如何在查询输出中执行此类操作?
解决方法:
使用:
SELECT IFNULL(SUM(intervento.IMP_IND_POS_AFF_MIN), 0)
这意味着IFNULL可以应用于SUM返回的值,其方式与应用于表字段的方式相同.