需要创建一个利用多个临时表的视图

时间:2018-02-07 02:26:25

标签: sql stored-procedures views temp-tables

我正在尝试从使用多个临时表的代码创建view。当我的临时表采用方法A:

的形式时,我最终能够完成此操作

方法A:

create view viewtest as
with temp1 as (select * from x where y),

temp2 as (select * from temp1 where z),

select * from temp2;

上述工作,但运行时间太长。运行下面的代码时,我会更快地收到结果。

方法B:

select * INTO temp1 from (select * from x where y) x

select * INTO temp2 from (select * from temp1 where z)

select * from temp2;

但是,view不支持第二种类型的临时表。

我已经从方法B创建了一个存储过程,但是,当我尝试使用SP填充VIEW(这是最终目标)时,这对我没有好处,因为它使用了这种类型的临时表。

我的最终目标是让视图快速有效地返回 - 到目前为止,我只能通过创建select * INTO临时表来提高速度。

0 个答案:

没有答案