ソースコード
WITH F AS (
    SELECT
        PF_CODE
        ,NATION_CODE
        ,AMT
        ,ROW_NUMBER() OVER (PARTITION BY PF_CODE ORDER BY AMT DESC, PF_CODE) AS RANK_AMT
    FROM
        FOREIGNER
    WHERE
    NATION_CODE != '113'
)
SELECT
    F.PF_CODE AS '都道府県コード'
    ,PF_NAME AS '都道府県名'
    ,MAX(CASE WHEN RANK_AMT = 1 THEN NATION_NAME END) '1位 国名'
    ,MAX(CASE WHEN RANK_AMT = 1 THEN AMT ELSE 0 END) AS '1位 人数'
    ,MAX(CASE WHEN RANK_AMT = 2 THEN NATION_NAME END) '2位 国名'
    ,MAX(CASE WHEN RANK_AMT = 2 THEN AMT ELSE 0 END) AS '2位 人数'
    ,MAX(CASE WHEN RANK_AMT = 3 THEN NATION_NAME END) '3位 国名'
    ,MAX(CASE WHEN RANK_AMT = 3 THEN AMT ELSE 0 END) AS '3位 人数'
    ,SUM(AMT) AS '合計人数'
    -- *
FROM
    F
LEFT JOIN 
    NATIONALITY	AS N
ON F.NATION_CODE = N.NATION_CODE
LEFT JOIN
    PREFECTURE AS P
ON F.PF_CODE = P.PF_CODE
GROUP BY
    PF_NAME
ORDER BY
    合計人数 DESC, 都道府県コード
提出情報
提出日時2023/10/31 00:59:50
コンテスト第1回 SQLコンテスト
問題外国籍分布
受験者Macchapi
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量81 MB
メッセージ
テストケース(通過数/総数)
2/2
状態
メモリ使用量
データパターン1
AC
81 MB
データパターン2
AC
76 MB