曖昧検索
配点 : 20点難易度 : 2
制限実行時間 : 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の関数および構文などについては、「受験ルール・用語」をご確認ください。

問題

地域毎に人口を集計した人口テーブルより、総数(TOTAL_AMT)が10万人以上で、地区名(DISTRICT_NAME)に '東' を含んでいるデータを表示しなさい。

表示項目は以下とする。(エイリアスを使用し→の項目名とする)

  • DISTRICT_CODE → CODE
  • DISTRICT_NAME → NAME
  • TOTAL_AMT → TOTAL

表示順

  1. 総数の降順
  2. 地区コードの昇順

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

表示フォーマット

※あくまでフォーマットを示すもので、正解例ではありません。行数も正解とは異なります。

CODE NAME TOTAL
27114 大阪市東淀川区 177120
27118 大阪市城東区 169043
27121 大阪市東住吉区 127849
27218 大東市 127849
27115 大阪市東成区 100000

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
27102 大阪市都島区 107904 51763 56141
27103 大阪市福島区 79328 37633 41695
27104 大阪市此花区 65251 31610 33641
27106 大阪市西区 105862 49586 56276
27107 大阪市港区 80948 39498 41450
27108 大阪市大正区 62083 30164 31919
27109 大阪市天王寺区 82148 37988 44160
27111 大阪市浪速区 75504 38393 37111
27113 大阪市西淀川区 95864 47067 48797
27114 大阪市東淀川区 177120 86660 90460
27115 大阪市東成区 100000 50000 50000
27116 大阪市生野区 127309 60309 67000
27117 大阪市旭区 89670 42676 46994
27118 大阪市城東区 169043 80220 88823
27119 大阪市阿倍野区 110995 51160 59835
27120 大阪市住吉区 153056 71193 81863
27121 大阪市東住吉区 127849 60161 67688
27122 大阪市西成区 106111 61300 44811
27123 大阪市淀川区 183444 91327 92117
27124 大阪市鶴見区 112691 53166 59525
27125 大阪市住之江区 120072 57611 62461
27126 大阪市平野区 191742 90414 101328
27127 大阪市北区 139376 67805 71571
27128 大阪市中央区 103726 48676 55050
27217 松原市 116796 56135 60661
27218 大東市 127849 60161 67688
27219 和泉市 155837 74838 80999
Sorry, Japanese Only.