コンテストの制限時間が終了しました。
以降も提出を行うことができますが、順位集計には反映されません。
以降も提出を行うことができますが、順位集計には反映されません。
ソースコード
-- 港毎に出入国者の人数を集計した出入国集計データより、外国人の入国者が出国者より多い港を抽出しなさい。 種別コードは、'110'(入国者) 、'120'(出国者)となる。
-- 表示項目は以下とする。(エイリアスを使用し→の項目名とする)
-- PORT_CODE → 港コード
-- PORT_NAME → 港名
-- 外国人入国者のAMT → 入国者数
-- 外国人出国者のAMT → 出国者数
-- 外国人入国者のAMT - 外国人出国者のAMTの計算結果 → 差分
-- 表示順
-- 差分の降順
-- 港コードの降順
-- g.groupcode 110 日本人
-- g.groupcode 120 外国人
select
tmp.port_code as '港コード'
,tmp.port_name as '港名'
,tmp.in_amt as '入国者数'
,tmp.out_amt as '出国者数'
,tmp.sabun as '差分'
from (
select
i.port_code
,p.port_name
,sum(case when i.kind_code = 110 then i.amt else 0 end) as in_amt
,sum(case when i.kind_code = 120 then i.amt else 0 end) as out_amt
,sum(case when i.kind_code = 110 then i.amt else 0 end) - sum(case when i.kind_code = 120 then i.amt else 0 end) as sabun
from IMMIGRATION as i
join GRP as g
on i.GROUP_CODE = g.GROUP_CODE
and g.group_code = 120
join PORT as p
on i.PORT_CODE = p.PORT_CODE
group by
i.port_code
having
sum(case when i.kind_code = 110 then i.amt else 0 end) - sum(case when i.kind_code = 120 then i.amt else 0 end) > 0
) as tmp
order by
tmp.sabun desc
,tmp.port_code desc
提出情報
提出日時 | 2022/07/20 19:59:47 |
コンテスト | 第1回 SQLコンテスト |
問題 | 港入出国者分析 |
受験者 | otegal |
状態 (詳細) | AC (Accepted: 正答) |
メモリ使用量 | 103 MB |
メッセージ
テストケース(通過数/総数)
2/2
状態
メモリ使用量
データパターン1
AC
100 MB
データパターン2
AC
103 MB