从一个表到另一个发生匹配的表中插入行

时间:2019-03-21 16:30:09

标签: sql sql-server tsql bulkinsert

我有两个表PRODUCTION_HISTORYBULK_INSERT。我试图将TEST_Custom_DataSets表中BULK_INSERT列中的值从CUSTOM_DATASETS插入PRODUCTION_HISTORY匹配的WELL_KEY表中的INSERT INTO [dbo].[PRODUCTION_HISTORY] (CUSTOM_DATASETS) SELECT Test_Custom_DataSets FROM [dbo].[BULK_INSERT] WHERE [dbo].[BULK_INSERT].WELL_KEY = dbo.PRODUCTION_HISTORY.WELL_KEY ,但是出现以下错误:

  

无法绑定多部分标识符“ dbo.PRODUCTION_HISTORY.WELL_KEY”。

以下是我的查询:

android {
..

    testOptions {
            unitTests {
                returnDefaultValues = true
            }
        }

}

任何建议将不胜感激!

2 个答案:

答案 0 :(得分:1)

可以肯定,您只需要在select语句中将这两个表连接在一起即可。

INSERT INTO [dbo].[PRODUCTION_HISTORY] (CUSTOM_DATASETS) 
SELECT Test_Custom_DataSets 
FROM [dbo].[BULK_INSERT] AS bi
JOIN dbo.PRODUCTION_HISTORY AS ph 
    ON bi.WELL_KEY = ph.WELL_KEY

答案 1 :(得分:0)

我怀疑您要更新,而不是插入

UPDATE ph
    SET CUSTOM_DATASETS = bi.Test_Custom_DataSets
    FROM [dbo].[PRODUCTION_HISTORY] pn JOIN
         [dbo].[BULK_INSERT] bi
         ON bi.WELL_KEY = pn.WELL_KEY;