如何将选择查询结果添加到数据集中以后再次选择查询运行

时间:2009-04-08 12:18:05

标签: sql sql-server sql-server-2005

我想将选择查询结果添加到数据集中,所以我可以编写新的查询来运行它来获取网络数据集但是如何?

原始查询:


MyDATASET=(
select x, y,z from table1
union all
select k,l,m from table2
)
i wan to this select * from this.MyDATASET

2 个答案:

答案 0 :(得分:1)

那么,你可以创建一个CTE,UDF或视图吗?但目前还不清楚你要做什么......

CREATE VIEW MyView AS
    select x, y,z from table1
    union all
    select k,l,m from table2
GO

SELECT * FROM MyView
SELECT * FROM MyView WHERE x = 0

答案 1 :(得分:0)

假设您要缓存数据以便以后重复使用......

如果它包含在一位代码中,请使用临时表或表变量。

如果要在多个进程或调用中引用相同的数据,请使用临时表。对于许多调用使用本地调用但不关闭连接,对于许多不同的进程/连接使用全局调用。

如果只是一个大选择,你想重新使用相同的数据,那么使用CTE。

视图也有效,但数据可能会在执行之间发生变化。