ソースコード
with wk1 as (
select
    wk2.PF_CODE,
    wk2.NATION_CODE,
    wk2.AMT,
    wk3.NATION_NAME,
    row_number() over(partition by wk2.PF_CODE order by AMT desc,wk2.NATION_CODE asc) as num
from
    FOREIGNER as wk2
inner join
    NATIONALITY as wk3
on 
    wk2.NATION_CODE = wk3.NATION_CODE
where
    wk2.NATION_CODE != 113
)
select
    wk1.PF_CODE as "都道府県コード",
    wk4.PF_NAME as "都道府県名",
    max(case when wk1.num = 1 then wk1.NATION_NAME else null end) as "1位 国名",
    sum(case when wk1.num = 1 then wk1.amt else 0 end) as "1位 人数",
    max(case when wk1.num = 2 then wk1.NATION_NAME else null end) as "2位 国名",
    sum(case when wk1.num = 2 then wk1.amt else 0 end) as "2位 人数",
    max(case when wk1.num = 3 then wk1.NATION_NAME else null end) as "3位 国名",
    sum(case when wk1.num = 3 then wk1.amt else 0 end) as "3位 人数",
    sum(wk1.amt) as "合計人数"
from
    wk1
inner join
    PREFECTURE as wk4
on
    wk1.PF_CODE = wk4.PF_CODE
group by 
    wk1.PF_CODE
order by
    合計人数 desc,
    都道府県コード desc
;
提出情報
提出日時2022/07/21 13:11:27
コンテスト第1回 SQLコンテスト
問題外国籍分布
受験者Canzume
状態 (詳細)WA
(Wrong Answer: 誤答)
メモリ使用量80 MB
メッセージ
テストケース(通過数/総数)
1/2
状態
メモリ使用量
データパターン1
WA
80 MB
データパターン2
AC
78 MB