Sql server SQL Server,是否从选择查询插入表?

Sql server SQL Server,是否从选择查询插入表?,sql-server,stored-procedures,Sql Server,Stored Procedures,我将从存储过程中的查询填充一个表 这项工作: SELECT * INTO #tmpTable FROM MyTable SELECT TOP (1) * FROM MyTable WHERE Land = @Land 这项工作: SELECT * INTO #tmpTable FROM MyTable SELECT TOP (1) * FROM MyTable WHERE Land = @Land 但是,我如何在tmpTable中填充 因为临时表的作用域仅限于其会话SPI

我将从存储过程中的查询填充一个表

这项工作:

SELECT * 
INTO #tmpTable 
FROM MyTable
SELECT TOP (1) * 
FROM MyTable 
WHERE Land = @Land
这项工作:

SELECT * 
INTO #tmpTable 
FROM MyTable
SELECT TOP (1) * 
FROM MyTable 
WHERE Land = @Land
但是,我如何在tmpTable中填充


因为临时表的作用域仅限于其会话SPID,即存储过程本身。SP执行完成后,将删除临时表


此外,在执行SP时,您无法从其他会话SPID中看到临时表使用全局临时表,就像temp一样,即使在执行SP后可以访问临时表也

从MyTable中选择TOP 1*进入tmpTable,其中Land=@Land?这个问题可能会有帮助:@MeerArtefakt,你到底在找什么?你能清楚地描述一下你的问题陈述吗?@Manoj:我会把存储过程中的tmpTable看作一个返回值。后来,我将使用我的ccode@jpw:它很好用!但是为什么在执行存储过程之后我看不到表呢?在从MyTable(其中Land=@Land)选择TOP 1*进入tmpTable之后,我是否需要从tmpTable中选择*?您希望最终从SP获取存储在临时表中的记录,对吗?在这种情况下,您可以在SP末尾执行SELECT*from TENTABLE,这将在SP执行完成后返回所有记录。可能建议使用SELECT*from temp将temp表返回到表变量输出参数中,作为从调用代码获取数据的一种方式,或者如果需要,使用globalTempTable。