ソースコード
SELECT
  X.PF_CODE                                                  AS "都道府県コード"
, X.PF_NAME                                                  AS "都道府県名"
, MAX(CASE WHEN X.RANK = 1 THEN X.NATION_NAME ELSE NULL END) AS "1位 国名"
, MAX(CASE WHEN X.RANK = 1 THEN X.AMT         ELSE 0    END) AS "1位 人数"
, MAX(CASE WHEN X.RANK = 2 THEN X.NATION_NAME ELSE NULL END) AS "2位 国名"
, MAX(CASE WHEN X.RANK = 2 THEN X.AMT         ELSE 0    END) AS "2位 人数"
, MAX(CASE WHEN X.RANK = 3 THEN X.NATION_NAME ELSE NULL END) AS "3位 国名"
, MAX(CASE WHEN X.RANK = 3 THEN X.AMT         ELSE 0    END) AS "3位 人数"
, SUM(X.AMT) AS "合計人数"
FROM (
  SELECT
    A.PF_CODE
  , C.PF_NAME
  , A.NATION_CODE
  , B.NATION_NAME
  , A.AMT
  , ROW_NUMBER() OVER (PARTITION BY A.PF_CODE ORDER BY A.AMT DESC, A.NATION_CODE) AS RANK
  FROM
    FOREIGNER A
    INNER JOIN NATIONALITY B ON A.NATION_CODE = B.NATION_CODE
    INNER JOIN PREFECTURE  C ON A.PF_CODE     = C.PF_CODE
  WHERE
    A.NATION_CODE <> '113'
) X
GROUP BY
  X.PF_CODE
, X.PF_NAME
ORDER BY
  SUM(X.AMT) DESC
, X.PF_CODE ASC
提出情報
提出日時2022/07/20 17:39:15
コンテスト第1回 SQLコンテスト
問題外国籍分布
受験者masami.araki
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量105 MB
メッセージ
テストケース(通過数/総数)
2/2
状態
メモリ使用量
データパターン1
AC
105 MB
データパターン2
AC
104 MB