我正在尝试将值写入输出参数。在我的 THEN
语句中,我想将 outParam
返回为 1 或 0,但不确定如何修改以下语句来执行此操作。有人可以帮忙吗?谢谢!
CREATE PROCEDURE [dbo].[myProc]
@var1 UNIQUEIDENTIFIER,
@outParam BIT OUTPUT
AS
SELECT
CASE
WHEN EXISTS (SELECT 1
FROM [Table1] AS [i]
WHERE (CONVERT(VARCHAR(36), [i].[var1]) = @var1)
AND ([i].[BitColumn] = 1))
THEN CAST(1 AS BIT)
ELSE CAST(0 AS BIT)
END
GO
最佳答案
你离我们如此之近!只需设置即可开始。
CREATE PROCEDURE [dbo].[myProc] @var1 uniqueidentifier,
@outParam bit OUTPUT
AS
SELECT @outParam = CASE
WHEN EXISTS (
SELECT 1
FROM [Table1] AS [i]
WHERE (CONVERT(VARCHAR(36), [i].[var1]) = @var1) AND ([i].[BitColumn] = 1))
THEN CAST(1 AS BIT) ELSE CAST(0 AS BIT)
END;
GO
关于sql-server - 存储过程的输出参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57580552/