我正在使用MS Access
下面的SQL用具有结束日期的tblTorTee记录的数量更新Parent tblContact记录中的CurrNumTees字段(这不是我想要的最终效果,但我将其作为起点。
UPDATE tblContact
INNER JOIN tblTorTee ON tblContact.ContactId = tblTorTee.TorId
SET tblContact!CurNumTees = DCount("[tblTorTee.EndDate]",
"tbltortee","Torid = " & [ContactId]);
我需要用tblTorTee中没有EndDate的记录数更新CurrNumTees字段,换句话说,该字段为空。我尝试在各种组合和位置中使用WHERE和HAVING和IS NULL,但没有成功。您能帮我指出正确的方向吗?
MS Access COUNT函数不计算空值,因此我认为您必须分两个阶段执行此操作。
首先创建如下查询:
SELECT TorId, IIF(ISNULL(EndDate),1,0) AS isN
FROM tblTorTee
WHERE EndDate IS NULL;
并将其另存为QryEndDateNull
现在,您可以运行像这样的更新查询:
UPDATE tblContact
SET tblContact.CurNumTees = DSUM("IsN","QryEndDateNull","TorId = " & [ContactID]);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句