ソースコード
with avg as(
    select
        avg(POINT) as avg_point
    from
        TEST_RESULTS
    where
        TEST_ID = "100"
),
sd as(
    select
        abs(power(avg(power((t.POINT - avg.avg_point),2)),0.5))  as sd
    from
        TEST_RESULTS as t
    join
        avg 
    where
        TEST_ID = "100" 
)

select
    USER_ID as USER,
    POINT as PT,
    case sd.sd
    when 0 then 50
    else 50 + round(((t.POINT - avg.avg_point) * 10 / sd.sd),1) end as DEV_VAL 
from
    TEST_RESULTS as t
join
    sd
join
    avg
where
    TEST_ID = "100" 
order by
    DEV_VAL desc,
    USER
提出情報
提出日時2023/07/20 22:50:21
コンテスト第5回 SQLコンテスト
問題偏差値の算出
受験者Ginobirian20
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量76 MB
メッセージ
テストケース(通過数/総数)
4/4
状態
メモリ使用量
データパターン1
AC
75 MB
データパターン2
AC
75 MB
データパターン3
AC
76 MB
データパターン4
AC
75 MB