場景:表 pydot_g 已導入 name 欄位,需回填 package_name,逐條 UPDATE 效能極差。採用 CASE WHEN ... END 搭配 WHERE id IN (...) 單語句完成。
UPDATE table_name SET field_name = CASE other_field WHEN val1 THEN 'new_val1' WHEN val2 THEN 'new_val2' WHEN val3 THEN 'new_val3' END WHERE id IN (val1, val2, val3);
CASE 分支對應 id,WHEN id THEN value 精確映射WHERE id IN (...) 限制掃描範圍,避免全表掃描