我想使用CASE语句,例如下面的代码或实现上述方案的任何其他建议。

我将在一些SP where @UpdateStatus中使用它,作为输入参数。

请提出建议。

DECLARE @UpdateStatus nvarchar(20)
SET @UpdateStatus='P'
 CASE
    WHEN @UpdateStatus='P' THEN
     BEGIN
        BEGIN TRAN
            Print 'A' --Update some table
        COMMIT
     END
    WHEN @UpdateStatus='F' THEN
     BEGIN
        BEGIN TRAN
            Print 'B' --Update some table
        COMMIT
     END
 END

最佳答案

使用IF Else Statement处理不同的值

DECLARE @UpdateStatus nvarchar(20)
SET @UpdateStatus='P'
 IF @UpdateStatus='P'
     BEGIN
        BEGIN TRAN
            Print 'A' --Update some table
        COMMIT
     END
 ELSE IF @UpdateStatus='F'
     BEGIN
        BEGIN TRAN
            Print 'B' --Update some table
        COMMIT
     END

关于sql - 我们可以在选择或更新查询之外使用CASE语句吗?输入参数的CASE语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30792964/

10-10 12:58