我在Access 2013中有一个查询,当结果动态集中没有数据时,该查询什么也不显示。我希望它显示为0。
我的报告每个月生成一次,因此我将invClosureDate
格式设置为年份和月份。当没有数据时,查询将不返回任何内容,报告要求是在没有数据时显示0。
SELECT Format([invClosureDate],"yyyy") AS invCY, Format([invClosureDate],"mmm") AS invCM, Sum(Abs(IIf([invStatus]="closed",1,0))) AS Inc, tblInvestigations.invClosureDate
FROM tblInvestigations
GROUP BY Format([invClosureDate],"yyyy"), Format([invClosureDate],"mmm"), tblInvestigations.invClosureDate
HAVING (((tblInvestigations.invClosureDate)=[Forms]![tblInvestigations]![txtInvDate]));
答案 0 :(得分:0)
一种选择是,如前所述,是使用具有零/默认值的联合查询。
另一个选择是构建零/默认值查询,如果数据查询中没有记录,则使用VBA将报表的记录源更改更改为此查询。这需要在打开报告之前完成。
答案 1 :(得分:0)
已解决 SELECT Count(tblInvestigations.invStatus)AS CountOfinvStatus 来自tblInvestigations 在哪里(((((tblInvestigations.invStatus)=“ closed”)AND AND((Format([invClosureDate],“ mmmm”))= [Forms]![tblInvestigations]![txtInvDate]));