ソースコード
WITH check_target AS (
    SELECT * FROM
    (
        SELECT
            MEMBER_CODE CODE,
            WEIGHT,
            CHECKUP_DATE CK_DATE,
            ROW_NUMBER() OVER (PARTITION BY MEMBER_CODE ORDER BY CHECKUP_DATE DESC) AS CHECKUP
        FROM HEALTH_CHECKUP
    )
    WHERE CHECKUP <= 2
)
SELECT
    T1.CK_DATE,
    T1.CODE,
    M.LAST_NAME || M.FIRST_NAME NAME,
    ROUND(T1.WEIGHT - T2.WEIGHT,2) CHG_WT
FROM
    (SELECT CODE,CK_DATE,WEIGHT FROM check_target WHERE CHECKUP = 1) T1
INNER JOIN 
    (SELECT CODE,WEIGHT FROM check_target WHERE CHECKUP = 2) T2 ON T1.CODE = T2.CODE
INNER JOIN
    MEMBER_MST M ON T1.CODE = M.MEMBER_CODE
WHERE abs(ROUND(T1.WEIGHT - T2.WEIGHT,2)) >= 5
ORDER BY
    CHG_WT DESC,
    T1.CODE DESC
;
提出情報
提出日時2024/06/23 23:07:24
コンテスト第13回 SQLコンテスト
問題体重差分
受験者fractal1024
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量87 MB
メッセージ
テストケース(通過数/総数)
2/2
状態
メモリ使用量
データパターン1
AC
87 MB
データパターン2
AC
85 MB