将更新与内连接一起使用SQL SERVER 2012

时间:2015-04-23 14:34:40

标签: sql sql-server

我需要som指导,了解如何从INNER JOIN的表中检索所需的列,同时更新并在原始表中插入新列。

这是我到目前为止所写的内容

SELECT  DISTINCT 

            a.[CustNo],
            X.CustomerID    

  FROM tblA_Add_CustomerID_Column a
  INNER JOIN tblX x
    ON x.CustomerCode = a.custno

我的表格tblA_Add_CustomerID_Column只有一个名为CustNo的列,并且根据上述查询,我​​想将CustomerID添加到表格tblA_Add_CustomerID_Column

我如何UPDATEINSERTCustomerID中的tblX列?

我的常规方法一直是INNER JOIN,然后将结果放到Excel工作表上,然后将我的Excel文件导入数据库。

2 个答案:

答案 0 :(得分:3)

您可以添加类似

的列

alter table tblA_Add_CustomerID_Column add CustomerID int

然后您可以使用更新语句更新表,例如

UPDATE tblA_Add_CustomerID_Column  
SET CustomerID = x.cusomterID
FROM tblX x
WHERE custno = x.CustomerCode

答案 1 :(得分:0)

你可以这样做:

ALTER TABLE tblA_Add_CustomerID_Column
ADD CustomerID INT;

EXEC('
UPDATE a
        SET CustomerID = x.cusomterID
        FROM tblA_Add_CustomerID_Column a
        INNER JOIN tblX x ON x.CustomerCode = a.custno;
    ');