【发布时间】:2017-12-15 09:33:48
【问题描述】:
如果有人可以提供帮助,我将不胜感激。 我需要合并两张表。到目前为止,我每次都这样做。
SELECT * INTO TABLE_3
FROM TABLE_1 LEFT JOIN TABLE_2
ON TABLE_1.[DATE] = TABLE_2.[DATE1]
但是,我想跳过创建新表的部分并将我需要的列直接插入现有表中。 我试过这样做,
INSERT INTO [TABLE_1] (USD,EUR,RUR)
SELECT USD,EUR,RUR
FROM TABLE_1 AS T1 LEFT JOIN TABLE_2 AS T2
ON T1.[DATE] = T2.[DATE1]
但出现错误提示我的列名不明确
我使用 SQL Server 2014。
【问题讨论】:
-
只需为列名添加别名,如
T1.USD等。 -
使用表别名完全限定列名,例如T1.USD 等
-
@Serg 请在下面找到答案
-
table_1 中有另一列称为 DPD,它不允许 NULLS。当我添加别名时,我收到此列不能为 NULL 并且插入语句已终止的错误。我真的不明白为什么会发生此错误,因为我没有将该列用于任何内容。
标签: sql-server join sql-insert