[英]Updating multiple rows SQL
我试图搜索和搜索,但我找不到匹配的答案。
我需要更新数据库中的 300 行,查询似乎变得越来越长。 我知道我可以以某种方式制作临时表,但我被卡住了。
下面是表格的例子
ProductID | (Old)ArticleNumber | (New)ArticleNumber
268687 | EXRO300 | 5709070
268702 | EXS50030 | 1595831
268728 | EX62111 | 1562993
268730 | EXRT25 | 1009451
268733 | EX240220V | 7800100
268737 | EX600 | 1875928
..........|....................|.................
然后像 300 行。
所以,旧货号需要用新货号代替……
如果您在 db 的另一个表中有New Article Nr
,请通过ProductID
加入它并将它们设置为:
UPDATE oldProductTbl
SET oldProductTbl.ArticleNumber = newProductTbl.ArticleNumber
FROM Products1 oldProductTbl
JOIN Product2 newProductTbl
ON oldProductTbl.ProductId = newProductTbl.ProductId
使用此查询更新临时表中的数据
UPDATE
Table_A
SET
Table_A.(old)ArticleNumber = Table_A.(New)ArticleNumber,
FROM
Some_Table AS Table_A
我用新的商品编号和产品 ID 创建了一个新的临时表。
CREATE TABLE #NewArticle(
ProductID int,
ArticleNumber char(30) )
然后我使用插入表来填充它。
insert into #NewArticle(ProductID,NewArticle)
VALUES ('268687'),('5709070'),
('269364','HA61451CTH'),
('269393','5665237'),
........
然后这一切都更新了。
update tblProduct
set NewArticle = #NewArticle.NewArticle
from tblProduct
inner join #NewArticle on tblproduct.ProductID = #NewArticle.ProductID
好的! 非常感谢!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.