我正在从数据库创建堆积图。有12个月的数据,系列中有3个项目:A AA和AAA。为了正确填充堆积图,它需要为所有 12 个月中的每个月为三个系列中的每一个找到一个值。
我正在查询的数据库的问题是,每个月都没有找到每个系列。本质上,当一个序列值为 0 时,它根本不会记录在数据库中。
我需要知道在第 1 个月、第 2 个月、第 3 个月等不存在 A、AA 或 AAA 时如何返回值 0。因此,3 系列和 12 个月的查询结果将返回 36 Total价值观。
谢谢你,埃里克
重要提示:我在下面发布查询仅供参考,我不要求您完全编辑我的查询。如果我可以输入正确的功能/代码,我可以应用它。
当前查询
select E.DES_CARTERA_CC Fund_Name,
DATE_FORMAT(D.F_ULT_CIERRE_MENSUAL, "%d/%m/%Y") Date_as_of,
DATE_FORMAT(A.F_CORTE, "%Y/%m") Date_of_distribution_SORT,
DATE_FORMAT(A.F_CORTE, "%m/%Y") Date_of_distribution,
C.DES_CALIFICACION Item_description,
ROUND(SUM(A.POR_CALIFICACION), 2) Percentage_of_distribution
from det_calificaciones A
Join mcalificaciones C on ( A.ID_CALIFICACION = C.ID_CALIFICACION )
Join mcarteras E on ( A.ID_CARTERA = E.ID_CARTERA )
Join mpaises D on ( E.COD_PAIS = D.COD_PAIS )
where A.ID_CARTERA = @ID_CARTERA
AND A.F_CORTE BETWEEN DATE_ADD(D.F_ULT_CIERRE_MENSUAL, INTERVAL -11 MONTH) AND D.F_ULT_CIERRE_MENSUAL
GROUP BY A.F_CORTE, C.DES_CALIFICACION
ORDER BY Date_of_distribution_SORT ASC