ソースコード
SELECT
    p.pf_code as "都道府県コード",
    p.pf_name as "都道府県名",
    MAX(CASE tmp.ranking WHEN 1 THEN tmp.nation_name END) AS "1位 国名",
    MAX(CASE tmp.ranking WHEN 1 THEN tmp.amt END) AS "1位 人数",
    MAX(CASE tmp.ranking WHEN 2 THEN tmp.nation_name END) AS "2位 国名",
    MAX(CASE tmp.ranking WHEN 2 THEN tmp.amt END) AS "2位 人数",
    MAX(CASE tmp.ranking WHEN 3 THEN tmp.nation_name END) AS "3位 国名",
    MAX(CASE tmp.ranking WHEN 3 THEN tmp.amt END) AS "3位 人数",
    SUM(tmp.amt) AS "合計人数"
FROM prefecture p
JOIN (
    SELECT
        f.pf_code,
        RANK() OVER(
            PARTITION BY
                f.pf_code
            ORDER BY 
                f.amt DESC,
                f.pf_code
        ) AS ranking,
        n.nation_name,
        f.amt
    FROM foreigner f
    JOIN nationality n
    ON f.nation_code=n.nation_code
    WHERE f.nation_code <> "113"
) tmp
ON p.pf_code=tmp.pf_code
GROUP BY p.pf_code
ORDER BY 合計人数 DESC, p.pf_code;
提出情報
提出日時2022/07/21 14:42:11
コンテスト第1回 SQLコンテスト
問題外国籍分布
受験者drillmachine
状態 (詳細)WA
(Wrong Answer: 誤答)
メモリ使用量80 MB
メッセージ
テストケース(通過数/総数)
1/2
状態
メモリ使用量
データパターン1
WA
80 MB
データパターン2
AC
80 MB