使用带有多个withs的insert语句

时间:2016-06-01 14:35:39

标签: sql-server common-table-expression

我有一个SQL查询(server 2012),它有多个with语句来对初始结果集执行计算。有没有办法在每个with语句中执行插入到临时表。

然后,我可以在最后执行选择,以便以一种不错的格式查看我的结果。

以下是SQL代码的示例。真正的查询很长,所以不想发布它。如果有一种完全不同的方式这样做,我全都耳朵。

with tce as (Select cash from sometable),
test1 as (((select * from tce) * 100) as morecash),
test 2 as (((select * from test1) * 100) as evenmorecash) 

1 个答案:

答案 0 :(得分:3)

只需将您的CTE扩展为临时表插入:

-- Query 1
SELECT cash
INTO #temp1
FROM sometable;

-- Query 2
SELECT cash * 100 as morecash
INTO #temp2
FROM #temp1

-- Query 3
SELECT morecash * 100 as evenmorecash
INTO #temp3
FROM #temp2;

-- Output
SELECT *
FROM #temp3;