ソースコード
/*
select 
fg.PF_CODE as "都道府県コード",
pf.PF_NAME as "都道府県名",
case when then else 0 end 人数が一番多い国のNATION_NAME as "1位 国名",
人数が一番多い国のAMT as "1位 人数",
人数が二番目に多い国のNATION_NAME as "2位 国名",
人数が二番目に多い国のAMT as "2位 人数",
人数が三番目に多い国のNATION_NAME as "3位 国名",
人数が三番目に多い国のAMT as "3位 人数",
各都道府県毎の外国人の合計人数 as "合計人数"
from foreigner as fg
inner join prefecture as pf on pf.pf_code = fg.pf_code
inner join nationality as na on na.nation_code = fg.nation_code
where fg.nation_code not in(113)
*/

select 
fg.PF_CODE as "都道府県コード",
pf.PF_NAME as "都道府県名",
--case when fg.amt = (select amt from foreigner group by amt order by amt desc limit 1,1) then na.nation_name else 0 end as "1位 国名"
fg1.nation_code as "1位 国名",
fg1.amt as "1位 人数"/*,
人数が二番目に多い国のNATION_NAME as "2位 国名",
人数が二番目に多い国のAMT as "2位 人数",
人数が三番目に多い国のNATION_NAME as "3位 国名",
人数が三番目に多い国のAMT as "3位 人数",
各都道府県毎の外国人の合計人数 as "合計人数"*/
from foreigner as fg
inner join prefecture as pf on pf.pf_code = fg.pf_code
inner join nationality as na on na.nation_code = fg.nation_code
inner join foreigner as fg1 on fg1.pf_code = fg.pf_code and fg1.amt = (select amt from foreigner group by amt order by amt desc limit 0,1) and fg2.nation_code not in(113)
inner join foreigner as fg2 on fg2.pf_code = fg.pf_code and fg2.amt = (select amt from foreigner group by amt order by amt desc limit 1,1) and fg2.nation_code not in(113)

/*
select * from foreigner
where amt =  (select amt from foreigner group by amt order by amt desc limit 0,1)
order by amt desc
*/
提出情報
提出日時2022/07/20 18:00:21
コンテスト第1回 SQLコンテスト
問題外国籍分布
受験者R3m1_C2
状態 (詳細)WA
(Wrong Answer: 誤答)
メモリ使用量105 MB
メッセージ
テストケース(通過数/総数)
0/2
状態
メモリ使用量
データパターン1
WA
105 MB
データパターン2
WA
102 MB