ソースコード
with
foreigner_rank as(
select
    f.PF_CODE
    , p.PF_NAME
    , n.NATION_NAME
    , AMT
    , rank()over(
    partition by f.PF_CODE
    order by AMT desc, f.PF_CODE) as rank
from
    FOREIGNER as f
    join
        PREFECTURE as p
    on
        f.PF_CODE = p.PF_CODE
    join
        NATIONALITY as n
    on
        f.NATION_CODE = n.NATION_CODE
where
    f.NATION_CODE != '113'
)
select
      PF_CODE as 都道府県コード
    , PF_NAME as 都道府県名
    , max(case rank when 1 then NATION_NAME else null end) as '1位 国名'
    , max(case rank when 1 then AMT else 0 end) as '1位 人数'
    , max(case rank when 2 then NATION_NAME else null end) as '2位 国名'
    , max(case rank when 2 then AMT else 0 end) as '2位 人数'
    , max(case rank when 3 then NATION_NAME else null end) as '3位 国名'
    , max(case rank when 3 then AMT else 0 end) as '3位 人数'
    , sum(AMT) as 合計人数
from
    foreigner_rank
group by
    都道府県コード, 都道府県名
order by
    合計人数 desc, 都道府県コード asc;
提出情報
提出日時2022/12/28 13:23:32
コンテスト第1回 SQLコンテスト
問題外国籍分布
受験者2takumax
状態 (詳細)WA
(Wrong Answer: 誤答)
メモリ使用量85 MB
メッセージ
テストケース(通過数/総数)
0/2
状態
メモリ使用量
データパターン1
WA
81 MB
データパターン2
WA
85 MB