在SQL中,CASE表达式可以根据特定条件返回不同的结果。要将CASE表达式的结果存储到变量中,并在同一个SELECT语句中使用它进行并发计算,可以使用以下方法:
DECLARE @tempVar INT;
SELECT @tempVar = CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END
FROM your_table;
SELECT @tempVar + another_column
FROM your_table;
在上述示例中,将CASE表达式的结果存储在@tempVar
变量中,然后在同一个SELECT语句的下一部分使用该变量进行计算。
SELECT subquery.tempResult + another_column
FROM (
SELECT CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END AS tempResult
FROM your_table
) AS subquery, your_table;
在上述示例中,将CASE表达式的结果存储在子查询的tempResult
列中,然后在同一个SELECT语句的下一部分使用该列进行计算。
需要注意的是,存储在变量或结果列中的值只在当前查询中有效,并在查询结束后被释放。如果需要在多个查询之间共享结果,可以考虑使用临时表或表变量。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云