Ms access 计算平均天数(带DateDiff和NULL)
MS ACCESS Jet SQL 我想找出两个日期之间的平均差值,以天为单位。但是,有一个日期包含空值,我想将其从计算中排除。请注意,我不能使用WHERE函数,因为我的SELECT语句中实际上还有其他未显示的聚合计算,我不想进行筛选 我最后一次尝试:Ms access 计算平均天数(带DateDiff和NULL),ms-access,null,average,datediff,Ms Access,Null,Average,Datediff,MS ACCESS Jet SQL 我想找出两个日期之间的平均差值,以天为单位。但是,有一个日期包含空值,我想将其从计算中排除。请注意,我不能使用WHERE函数,因为我的SELECT语句中实际上还有其他未显示的聚合计算,我不想进行筛选 我最后一次尝试: SELECT Avg(Iif(dateDischarge IS NOT NULL, DateDiff('d',DateValue(dateRandomisation),(DateValue(dateDischarge)))
SELECT
Avg(Iif(dateDischarge IS NOT NULL, DateDiff('d',DateValue(dateRandomisation),(DateValue(dateDischarge))),NULL)) AS dtdis_dtrand
FROM Table
GROUP BY Variable
谢谢你的帮助
Rob要从计算中排除,需要从平均值中排除行,因为当前0有影响 将其从选择列表中排除:
谢谢你的回复,亚历克斯。为了简单起见,我从上面的示例中删除了其他SELECT语句。实际上,我不想从我的其他聚合函数中排除任何情况,因此在这种情况下WHERE函数将没有帮助。请尝试在IIF中使用NULL而不是0?相同错误消息:条件表达式中的数据类型不匹配。。。我知道DateDiff语句在非分组查询上工作正常,这会在dateDischarge=NULL的行中产生错误
... FROM Table WHERE dateDischarge IS NOT NULL