SELECT IF进入自定义变量

时间:2012-07-06 19:56:49

标签: sql-server

我有这个:

SELECT 
        @is_daily_rollup = CASE WHEN rt.[id]=1 THEN 1 ELSE 0,
        @is_weekly_rollup = CASE WHEN rt.[id]=2 THEN 1 ELSE 0

但是sql server抱怨语法。我如何将这个条件值实现到变量?

2 个答案:

答案 0 :(得分:4)

对于CASE语句,您需要提供END

CASE WHEN rt.[id]=1 THEN 1 ELSE 0 END
CASE WHEN rt.[id]=2 THEN 1 ELSE 0 END

所以您的完整查询将是:

SELECT @is_daily_rollup = CASE WHEN rt.[id]=1 THEN 1 ELSE 0 END,
       @is_weekly_rollup = CASE WHEN rt.[id]=2 THEN 1 ELSE 0 END

答案 1 :(得分:4)

您错过了END的{​​{1}}:

CASE

当然,这是假设您已经声明了yor变量。