EXEC sproc COALESCE(value1,value2)

时间:2017-09-19 09:07:43

标签: sql sql-server sql-server-2008-r2

如果字段值为null,我需要执行一个需要COALESCE的存储过程,使用另一个字段值。

EXEC dbo.TestSproc COALESCE ('Field1','Field2')

有人能够建议如何最好地编码吗?

这将在SQL作业中调用,因此需要一行。

2 个答案:

答案 0 :(得分:0)

当该字段为NULL时的CASE语句

    CASE WHEN field IS NULL
    THEN COALESCE ('Field1','Field2')
    ELSE 0 END

答案 1 :(得分:0)

可替换地:

declare @field1 bigint = (select Field1 from table1);
declare @field2 bigint = (select Field2 from table2);
declare @isnull bigint = isnull(@field1, @field2);

exec dbo.TestSproc @isnull