我有这个:
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 抱怨语法。我将如何将这个条件值实现到变量中?
我有这个:
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 抱怨语法。我将如何将这个条件值实现到变量中?
对于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
你错过了END
你的CASE
:
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
当然,这是假设您已经声明了变量。