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