Sử dụng FROM
mệnh đề của UPDATE
tham gia temp_zip_type
và zip_code_type
và thực hiện tất cả trong một câu lệnh đơn giản:
UPDATE zip_code z
SET type_id = t.id
FROM temp_zip_type tmp
JOIN zip_code_type t ON t.value = tmp.temp_type
WHERE z.zip_5_digit = tmp.temp_zip
AND z.type_id IS DISTINCT FROM t.id; -- avoid empty updates
Tôi đã thêm dòng cuối cùng để tránh cập nhật trống. Nó có thể hữu ích hoặc không. Chi tiết: