2013-10-22 51 views
0

我有2代表与同一列例如ID,供应商ID,ConditionValue,状态,删除,我插入数据作为代码如何将记录从一张表插入另一张表?

INSERT INTO SCM_SupplierShippingRateHistory 
SELECT *   
FROM SCM_SupplierShippingRate   
WHERE Id NOT IN(SELECT ID FROM dbo.GetIDsTableFromIDsList(@NonDeleteShippingIDs))   
AND SupplierId= @SupplierID   
AND ConditionValue IS NULL  
AND Deleted=0  

我要插入相同的数据,但我想设置状态= 4 I如何能这样做

回答

1

显式选择列。

INSERT INTO SCM_SupplierShippingRateHistory 
(
    Col1, 
    Col2, 
    . 
    . 
    . 
    Status 
) 
SELECT Col1, 
     Col2, 
     . 
     . 
     . 
     4 AS [Status] 

FROM SCM_SupplierShippingRate   
WHERE Id NOT IN 
     (
      SELECT ID 
      FROM dbo.GetIDsTableFromIDsList(@NonDeleteShippingIDs) 
     )   
     AND SupplierId= @SupplierID   
     AND ConditionValue IS NULL  
     AND Deleted=0  
+0

请告诉我代码请 – Nadeem

+0

@Nadeem检查我的更新... –

0

你可以像这样设置状态。

INSERT INTO SCM_SupplierShippingRateHistory 
SELECT ID,SupplierID,ConditionValue,4 AS Status,Deleted   
FROM SCM_SupplierShippingRate   
WHERE Id NOT IN(SELECT ID FROM dbo.GetIDsTableFromIDsList(@NonDeleteShippingIDs))   
AND SupplierId= @SupplierID   
AND ConditionValue IS NULL  
AND Deleted=0 
相关问题