ISNULL()在更新表变量中不起作用

问题描述 投票:0回答:1

我有一个存储过程,其中包括一个从其他表变量更新的表变量。 ISNULL()在以下代码中不起作用。如果TR.TotalRequestCnt中存在某些内容,它将返回正确的值,但是如果NULL表中的该列中没有任何值,则返回TotalRequest

UPDATE @OutputTable
SET TotalRequestCount = ISNULL(TR.TotalRequestCnt, 0) 
FROM @TotalRequest TR
JOIN @OutputTable OT
ON TR.Document = OT.Document

Document的值是标识INT(5577,5575,5574)。

@TotalRequest值都是INT:

5577        NULL    NULL
5575        NULL    NULL
5574        2       1

我也尝试使用COALESCE()而不是ISNULL()失败。

sql sql-server tsql isnull
1个回答
1
投票

我找到了答案。

由于没有值,因此该行根本不执行任何更新,因此ISNULL永远没有机会触发。

© www.soinside.com 2019 - 2024. All rights reserved.