0
我有一個表:SQL如何使用新的唯一值替換數千唯一值的
key, value
1, ...
2, ...
3, ...
我現在需要更換幾千鍵
oldkey, newkey
1, 4
3, 7
結果
key, value
4, ...
2, ...
7, ...
有沒有一種實用的方法來做到這一點,而沒有成千上萬的更新查詢? 會高性能嗎?
我有一個表:SQL如何使用新的唯一值替換數千唯一值的
key, value
1, ...
2, ...
3, ...
我現在需要更換幾千鍵
oldkey, newkey
1, 4
3, 7
結果
key, value
4, ...
2, ...
7, ...
有沒有一種實用的方法來做到這一點,而沒有成千上萬的更新查詢? 會高性能嗎?
你可能需要內部聯接
SELECT b.newkey,a.value
FROM OLDKEYS a INNER JOIN NEWKEYS b
ON a.key = b.oldkey;
如果有需要,你可以使用這個邏輯的更新以及
與內更新他們加入,如:
UPDATE upd
SET upd.key = mapping_table.newkey
FROM table_to_update upd
INNER JOIN mapping_table
ON upd.key = mapping_table.oldkey
任何舊值都會顯示爲新值嗎? – jarlh
不,舊的和新的值都將是唯一的(它們實際上是哈希值) – Chris