PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

postgresql aktualisiert mehrere Tabellen in einer einzigen Abfrage

Das ist ein CTE-Ding (aber ich weiß nicht, wie ich es in ein vorbereitetes Java-Ding packen soll)

WITH src AS (
        UPDATE serial_rate
        SET rate = 22.53, serial_key = '0002'
        WHERE serial_key = '002' AND id = '01'
        RETURNING *
        )
UPDATE serial_table dst
SET serial_key = src.serial_key
FROM src
-- WHERE dst.id = src.id AND dst.serial_key  = '002'
WHERE dst.id = '01' AND dst.serial_key  = '002'
        ;