【发布时间】:2021-01-15 06:50:39
【问题描述】:
我正在执行COUNT,但当结果中没有行时无法获得值 0。
如果我删除 where 条件:
AND documentstats.OPENINGDATE >= '2021-01-01T00: 00: 00.000'
它工作正常,当结果中没有行时我得到值 0。
当我的计数中未找到任何行时,我正在寻找在 NumberOfViews 列中返回值 0 的选项。
谁能帮帮我?
SELECT
customertodocument.DocId,
COUNT (documentstats.DocId) AS NumberOfViews
FROM
customertodocument
LEFT JOIN
documentstats ON customertodocument.DocId = documentstats.DocId
AND customertodocument.customerId = documentstats.customerId
WHERE
customertodocument.customerId = '1111'
AND documentstats.openingdate >= '2021-01-01T00:00:00.000'
GROUP BY
customertodocument.DocId
ORDER BY
NumberOfViews ASC
【问题讨论】:
-
请同时标记您的 DBMS。
-
您是否尝试在
COUNT中添加ISNULL支票? -
将 documentstats.openingdate 条件从 WHERE 移到 ON 以获得真正的 LEFT JOIN 结果。
-
感谢大家的帮助。解决方案是将 documentstats.openingdate 条件从 WHERE 移动到 ON 以获得真正的 LEFT JOIN 结果。实际上,在stackoverflow.com/questions/219046/…stackoverflow.com/questions/219046/…@stackoverflow.com/questions/219046/…