Sql server 2008 r2 插入临时表,而不从联合结果创建临时表

Sql server 2008 r2 插入临时表,而不从联合结果创建临时表,sql-server-2008-r2,Sql Server 2008 R2,我有下面的查询,它从多个select中获取结果。 现在我想把它们放在临时表中 有没有办法在不创建临时表的情况下将其插入临时表 我知道如何为select做这件事 Select * into #s --like that 然而,如何做到一个多选择 SELECT Ori.[GeoBoundaryAssId], Ori.[FromGeoBoundaryId], Ori.Sort From [GeoBoundaryAss] As Ori where Ori.[FromGeoBoundaryId]

我有下面的查询,它从多个select中获取结果。 现在我想把它们放在临时表中

有没有办法在不创建临时表的情况下将其插入临时表

我知道如何为select做这件事

Select * into #s --like that
然而,如何做到一个多选择

SELECT  Ori.[GeoBoundaryAssId],  Ori.[FromGeoBoundaryId], Ori.Sort 
From [GeoBoundaryAss] As Ori where  Ori.[FromGeoBoundaryId] = (select distinct [FromGeoBoundaryId] from inserted )

Union 

SELECT  I.[GeoBoundaryAssId],  I.[FromGeoBoundaryId], I.Sort 
From [inserted] I ;

在第一个
选择后将
添加到

SELECT  Ori.[GeoBoundaryAssId],  Ori.[FromGeoBoundaryId], Ori.Sort 
INTO #s
From [GeoBoundaryAss] As Ori where  Ori.[FromGeoBoundaryId] = (select distinct [FromGeoBoundaryId] from inserted )

Union 

SELECT  I.[GeoBoundaryAssId],  I.[FromGeoBoundaryId], I.Sort 
From [inserted] I ;
试试这个

INSERT INTO #s ([GeoBoundaryAssId], [FromGeoBoundaryId], Sort)
(
    SELECT  Ori.[GeoBoundaryAssId],  Ori.[FromGeoBoundaryId], Ori.Sort 
    FROM [GeoBoundaryAss] AS Ori WHERE  Ori.[FromGeoBoundaryId] in (SELECT DISTINCT [FromGeoBoundaryId] FROM inserted )

    UNION 

    SELECT  I.[GeoBoundaryAssId],  I.[FromGeoBoundaryId], I.Sort 
    FROM [inserted] I 
)