0

我正在将 Access 数据库转换为 SQL Server 后端。我已经完成了大部分工作,但我还无法弄清楚的一件事是,在我们运行的一份报告中,有几个字段显示为该#Error!字段的控制源是:

=DSum("[CustomerMinutes]","QryOutageSummaryByDateRange","NZ([CityRelated])= 0")

如图所示,它工作得很好,但是加载报告需要更长的时间,并且该CityRelated字段不是空字段,所以我觉得好像我不需要使用该NZ()功能。我已经在数据表视图中打开了查询,并且相应地没有任何 NULL。我很乐意提供更多细节,我只是不知道我应该提供哪些其他信息。任何帮助或一般方向将不胜感激!

4

1 回答 1

0

数据库函数(DSUM 等)对括号的使用很挑剔。尝试这个。

=DSum("IIF([CustomerMinutes] Is Null,0,[CustomerMinutes])","[QryOutageSummaryByDateRange]","[CityRelated] Is Null Or [CityRelated]=0")

如果CustomerMinutes从不为 NULL,那么您可以将CustomerMinutes其用作第一个参数。

请注意,方括号在表或查询名称周围,单个字段名称不一定需要。(这与示例在帮助系统中的显示方式相反。)

我总是更喜欢避免使用 NZ - 根据我的经验,它可能会导致聚合函数出现问题,或者在一系列查询中使用时出现问题。

于 2013-07-24T15:26:37.347 回答