コンテストの制限時間が終了しました。
以降も提出を行うことができますが、順位集計には反映されません。
以降も提出を行うことができますが、順位集計には反映されません。
ソースコード
create temporary table mean as
select
test_id,
avg(point) as meanpt,
count(1) as count
from test_results
where test_id = '100'
group by test_id;
create temporary table stderr as
select
'100' as test_id,
sqrt(sum((r.point - mean.meanpt) * (r.point - mean.meanpt) / mean.count)) as err
from test_results r
inner join mean
on r.test_id = mean.test_id;
select
r.user_id as USER,
r.point as PT,
case
when e.err > 0 then round(50 + ((r.point - m.meanpt) * 10) / e.err, 1)
else 50
end as DEV_VAL
from test_results r
inner join mean m
on r.test_id = m.test_id
inner join stderr e
on r.test_id = e.test_id
where
r.test_id='100'
order by DEV_VAL desc, r.user_id
;
提出情報
提出日時 | 2023/02/20 10:28:39 |
コンテスト | 第5回 SQLコンテスト |
問題 | 偏差値の算出 |
受験者 | espressivosubito |
状態 (詳細) | AC (Accepted: 正答) |
メモリ使用量 | 96 MB |
メッセージ
テストケース(通過数/総数)
4/4
状態
メモリ使用量
データパターン1
AC
94 MB
データパターン2
AC
96 MB
データパターン3
AC
92 MB
データパターン4
AC
79 MB