ソースコード
WITH avgtbl AS(
    SELECT
        AVG(POINT) as avgvalue
    FROM
        TEST_RESULTS
    WHERE
        TEST_ID = '100'
    
)
, sqrttbl AS(
    SELECT
        CASE WHEN SQRT(AVG(POWER(POINT - avgvalue, 2))) = 0 THEN 50 ELSE
        SQRT(AVG(POWER(POINT - avgvalue, 2))) END as sqrtvalue
    FROM
        TEST_RESULTS
        , avgtbl
    WHERE
        TEST_ID = '100'
)
SELECT
    USER_ID AS USER
    , POINT AS PT
    , ROUND(((POINT - avgvalue) * 10 / sqrtvalue), 1) + 50 as DEV_VAL
FROM
    TEST_RESULTS
    , avgtbl
    , sqrttbl
WHERE
     TEST_ID = '100'
ORDER BY
    DEV_VAL DESC
    , USER ASC
;
提出情報
提出日時2023/07/27 14:25:45
コンテスト第5回 SQLコンテスト
問題偏差値の算出
受験者roborobo
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量82 MB
メッセージ
テストケース(通過数/総数)
4/4
状態
メモリ使用量
データパターン1
AC
79 MB
データパターン2
AC
81 MB
データパターン3
AC
82 MB
データパターン4
AC
80 MB