我需要使用 ID 的比较从表 1 -> 表 2 传输 17,000 个“ISSI”值。不确定是否需要循环,因为 ID 乱序。
表 1: - sysdba.C_AccountTable
AccountProductID | ISSI |
-----------------------------
1QWEqwe | 113 |
2qweqwrdsd | 436 |
1Eqwe | 113 |
表 2: - dbo.AssetTable
CustomerProductID | ISSI |
--------------------------
1QWEqwe | |
1Eqwe | |
2qweqwrdsd | |
预期结果- dbo.AssetTable
CustomerProductID | ISSI |
--------------------------
1QWEqwe | 113 |
1Eqwe | 113 |
2qweqwrdsd | 436 |
(要更改 17,000 行)
这可能是预期的结果
DECLARE @C_AccountTable TABLE (AccountProductID VARCHAR(100),ISSI INT)
INSERT INTO @C_AccountTable
SELECT '1QWEqwe' , 113 UNION ALL
SELECT '2qweqwrdsd' , 436 UNION ALL
SELECT '1Eqwe' , 113
DECLARE @AssetTable TABLE(CustomerProductID VARCHAR(100) , ISSI INT)
INSERT INTO @AssetTable
SELECT '1QWEqwe',NULL UNION All
SELECT '1Eqwe' ,NULL
SELECT * FROM @AssetTable
UPDATE A
SET A.ISSI=C.ISSI
FROM @AssetTable A
INNER JOIN @C_AccountTable C
ON c.AccountProductID=A.CustomerProductID
SELECT * FROM @AssetTable
更新前的结果
CustomerProductID ISSI
-------------------------
1QWEqwe NULL
1Eqwe NULL
更新后的结果
CustomerProductID ISSI
-------------------------
1QWEqwe 113
1Eqwe 113
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句