Sql server 不带NZ()函数的access报告字段从非空列提取错误
我正在将Access数据库转换为SQL Server后端。我已经完成了大部分工作,但有一件事我还没有弄清楚,在我们运行的一个报告中,有几个字段显示为Sql server 不带NZ()函数的access报告字段从非空列提取错误,sql-server,ms-access,Sql Server,Ms Access,我正在将Access数据库转换为SQL Server后端。我已经完成了大部分工作,但有一件事我还没有弄清楚,在我们运行的一个报告中,有几个字段显示为#Error字段的控制源是: =DSum("[CustomerMinutes]","QryOutageSummaryByDateRange","NZ([CityRelated])= 0") 如图所示,它工作正常,但加载报告需要更长的时间,而且CityRelated字段是非空字段,因此我觉得似乎不需要使用NZ()函数。我已经在数据表视图中打开了查询,
#Error代码>字段的控制源是:
=DSum("[CustomerMinutes]","QryOutageSummaryByDateRange","NZ([CityRelated])= 0")
如图所示,它工作正常,但加载报告需要更长的时间,而且CityRelated
字段是非空字段,因此我觉得似乎不需要使用NZ()
函数。我已经在数据表视图中打开了查询,没有任何空值。我非常乐意提供更多的细节,我只是不知道我应该提供什么其他信息。任何帮助或一般指导将不胜感激 数据库功能(DSUM等)对括号的使用非常挑剔。试试这个
=DSum("IIF([CustomerMinutes] Is Null,0,[CustomerMinutes])","[QryOutageSummaryByDateRange]","[CityRelated] Is Null Or [CityRelated]=0")
如果CustomerMinutes
从不为空,则可以使用CustomerMinutes
作为第一个参数
请注意,方括号位于表或查询名称周围,单个字段名称不一定需要方括号。(这与示例在帮助系统中的显示方式相反。)
我总是倾向于避免使用NZ-根据我的经验,它可能会导致聚合函数出现问题,或者在一系列查询中使用时出现问题。删除NZ时会发生什么?该字段显示为\Error代码>