地区名の更新
配点 : 10点難易度 : 1
制限実行時間 : 1000ms制限メモリ使用量 : 128 MB
SQLiteの注意点

TOPSIC SQLでは、SQLの実行環境にSQLiteを使用しています。SQLite以外のRDBMSの文法を使用することはできません。
問題を解く際に注意すべきSQLiteの制約について、以下に記載してありますのでご確認下さい。

  1. NUMERIC、INTEGER、REALは、自身のクラスへの変換が推奨されていますが、変換できなかった場合でも、そのまま格納されます。
  2. 新しくデータを追加した場合、既に格納されているデータの中で ROWID の値が最大のものを探し、それに1を加えた値が新しく追加されるデータの ROWID の値として保存されます。
  3. 外部結合は、左外部結合を行う LEFT OUTER JOIN 句のみ使用できます。
    ※2022年12月以降、LEFT / RIGHT / FULL OUTER JOIN が使用可能となりました。
  4. 指定した日付と時刻のタイムゾーンはUTCとして扱われます。
  5. 日付関数や文字列関数については、SQLiteで固有の関数があります。
  6. テーブル項目の論理名が「◯◯日」となっている場合は、日付項目の時分秒は設定されていません。論理名が「◯◯日時」となっている場合は、日付項目の時分秒まで設定されています。
    • 「受注日」の場合は「2021-01-01」
    • 「受注日時」の場合は「2021-01-01 15:15:15」

その他のSQLiteの制約については、SQLiteの公式ドキュメントをご確認ください。
また、ER図の読み方やSQLiteの関数および構文などについては、「受験ルール・用語」をご確認ください。

問題

地域毎に人口を集計した人口テーブルで、地区名(DISTRICT_NAME)の値が、NULLまたは、空文字のデータの地区名を '不明' に更新しなさい。

※出典:政府統計の総合窓口(e-Stat)(https://www.e-stat.go.jp/)「令和2年国勢調査 人口等基本集計」を加工して作成

ER図 (半角:物理名、全角:論理名)


テーブル定義

テーブル名: POPULATION

主キー 列名 データ型 必須 デフォルト値
✔︎ DISTRICT_CODE VARCHAR ✔︎ NULL
DISTRICT_NAME VARCHAR NULL
TOTAL_AMT INTEGER NULL
MALE_AMT INTEGER NULL
FEMALE_AMT INTEGER NULL

サンプルデータ

テーブル名: POPULATION

DISTRICT_CODE DISTRICT_NAME TOTAL_AMT MALE_AMT FEMALE_AMT
02201 青森市 219275 101870 117405
02202 弘前市 115326 52547 62779
02203 八戸市 157255 75030 82225
02204 黒石市 15037 6857 8180
02205 五所川原市 14552 6473 8079
02206 十和田市 26838 12732 14106
02207 三沢市 21981 11393 10588
02208 むつ市 16759 7959 8800
90000 17900 9000 8900
91000 NULL 10000 5500 4500
Sorry, Japanese Only.