複数ステートメントのトランザクション
次は、トランザクション内で複数のステートメントを使い、RCON2203 に示される米国の州政府資産、RCON2236 に示される海外資産、またはその両方を保有しているかに基づいて、FIELD48 にフラグを設定します。
FIELD48 の値は、それぞれ 'US-STATE-GOV'、'FOREIGN'、'BOTH' とします。このようなフラグ項目は政府系データセットで一般的で、レコードの分類に役立ちます。
この演習はコースの一部です
PostgreSQL におけるトランザクションとエラー処理
演習の手順
- トランザクションを開始します。
- 列内の各条件を検出し、
FIELD48フラグに適切な値を設定するための UPDATE ステートメントを3つ作成します。 - トランザクションを終了します。
- フラグが
'BOTH'に設定されているレコード数を取得します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
-- 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 ___ = '___';