PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Come aggiornare la tabella dal collegamento della tabella?

Usa FROM clausola di UPDATE per unirti a temp_zip_type e zip_code_type e fai tutto in una semplice affermazione:

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

Ho aggiunto l'ultima riga per evitare aggiornamenti vuoti. Può essere utile o meno. Dettagli: