如何从临时 table 插入到 table?

How to insert into a table from temp table?

我在临时 table 中已有值,我想将其插入我的 table。

我遵循这个语法

IF NOT EXISTS (SELECT 1 FROM ABC abc JOIN #Temp t ON abc.ID = t.ID)

insert into MyTable(Id,Name)
select values (t.ID, t.Name)
From t

我只有名字 t 作为我在此插入之前的条件中创建的别名。

这是正确的吗?有些人使用@等。我很困惑。

正确的语法:

insert into MyTable(Id,Name)
select t.ID, t.Name
From #temp t

总是read manual

你可以看看这个

insert into Table1(Id,Name) 
select ID,Name
From t

插入 table_name(column_name1,column_name2,column_name3) (select temp_table_col1_1,temp_table_col1_1,temp_table_col1_1 来自 temp_table_name )

试试这个

INSERT INTO Table1(Id, Name)
SELECT t.ID, t.Name FROM t

请尝试使用以下代码片段。

IF NOT EXISTS (SELECT 1 FROM ABC abc JOIN #Temp t ON abc.ID = t.ID)

    insert into MyTable(Id,Name) select t.ID, t.Name From #Temp t

温度Table

CREATE TABLE #Temp1 ( Name VARCHAR(MAX) )

全球温度Table

CREATE TABLE ##Temp1 ( Name VARCHAR(MAX) )

Table变量

DECLARE @Temp1 TABLE( Name VARCHAR(MAX) ) 

在 SQL 服务器中,对于临时 table 我们使用“#”,对于 table 变量我们使用“@”。 有关 temp table 和 table 变量的更多详细信息,请查看 this.