我在表中有数百万条记录,我需要更新具有错误值的特定记录。我该怎么做?
示例:
Publish
需要更新如下:
Si Item_Id
1 T21547856
2 T45200254
3 T54785000
这只是一个例子。我有数百万条记录,需要更新超过50万条。
答案 0 :(得分:1)
一种方法是:
在item_id上创建索引,然后只进行更新。 update table set item_id = 'CS2541' where itme_id = 'T21547856'
这只适用于item_ids在您的表格中是唯一的。
在此之后,如果您不需要,可以删除索引。
第二种方法是创建另一个表B,其中包含要更新的值:
si item_id
1 CS2541
3 CS5475
然后执行merge
:
merge into your_table a
using b
on a.si=b.si
when matched then update set a.item_id=b.item_id;