我有一个临时表,我想在这个临时表上创建一个临时视图。
有可能吗?
在下面的示例中,我希望#Top10Records
是一个视图,而不是一个表,这样我就可以
select * into #Top10Records from (select top 10 * from #MytempTable)
发布于 2011-08-25 13:37:47
您可以使用公用表表达式来执行此操作:
WITH Top10Records AS
(
select top 10 * from #MytempTable
)
SELECT * FROM Top10Records
GO
发布于 2019-02-17 09:58:57
SQL Server不支持这样的临时视图,正如Daryl上面所说的那样,公共表表达式可能是可行的。然而,CTE的一个限制是它不能用于批处理中的多个查询。但是,您可以创建一个标准视图,根据需要使用它,然后在批处理/事务结束时简单地删除它。(我知道OP的问题是您是否可以创建临时视图,但这也可能适用-它需要模式更改,但对于所有意图和目的都是暂时的)。
https://stackoverflow.com/questions/7185555
复制相似问题