Transaktionen mit mehreren Anweisungen
Nutzen wir jetzt mehrere Anweisungen in einer Transaktion, um in FIELD48 ein Flag zu setzen – je nachdem, ob US-Bundesstaaten-Anlagen in RCON2203, ausländische Anlagen in RCON2236 oder beides gehalten wird.
Die Werte für FIELD48 sollten entsprechend 'US-STATE-GOV', 'FOREIGN' oder 'BOTH' sein. Solche Flag-Felder sind in Regierungsdatensätzen üblich und eignen sich hervorragend, um Datensätze zu kategorisieren.
Diese Übung ist Teil des Kurses
Transaktionen und Fehlerbehandlung in PostgreSQL
Anleitung zur Übung
- Starte eine Transaktion.
- Erstelle 3 UPDATE-Anweisungen, um jede Bedingung in der Spalte zu erkennen und das
FIELD48-Flag auf den passenden Wert zu setzen. - Beende die Transaktion.
- Wähle eine Anzahl der Datensätze aus, bei denen das Flag auf
'BOTH'gesetzt ist.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
-- Begin a new transaction
___;
-- Update FIELD48 flag status if US State Government deposits are held
UPDATE ffiec_reci
SET ___ = 'US-STATE-GOV'
WHERE RCON2203 > 0;
-- Update FIELD48 flag status if Foreign deposits are held
UPDATE ffiec_reci
SET ___ = 'FOREIGN'
WHERE RCON2236 > 0;
-- Update FIELD48 flag status if US State Government and Foreign deposits are held
UPDATE ffiec_reci
SET ___ = 'BOTH'
WHERE RCON2203 > 0
AND RCON2236 > 0;
-- Commit the transaction
___;
-- Select a count of records where FIELD48 is now BOTH
SELECT COUNT(FIELD48)
FROM ffiec_reci
WHERE ___ = '___';