ソースコード
WITH SUMMARY AS (
    SELECT 
        MEMBER_CODE,
        CHECKUP_DATE,
        WEIGHT,
        MAX(CHECKUP_DATE) OVER (PARTITION BY MEMBER_CODE) AS LATEST_DATE,
        LAG(WEIGHT) OVER (PARTITION BY MEMBER_CODE ORDER BY CHECKUP_DATE) AS BEFORE_WEIGHT
    FROM HEALTH_CHECKUP
),
TEMP AS (
    SELECT 
        SUMMARY.LATEST_DATE AS CK_DATE,
        SUMMARY.MEMBER_CODE AS CODE,
        MEMBER_MST.LAST_NAME || MEMBER_MST.FIRST_NAME AS NAME,
        (CAST(SUMMARY.WEIGHT * 10 AS INT) - CAST(SUMMARY.BEFORE_WEIGHT * 10 AS INT)) / 10.0 AS CHG_WT
    FROM SUMMARY
    INNER JOIN MEMBER_MST USING (MEMBER_CODE)
    WHERE 
        SUMMARY.CHECKUP_DATE = SUMMARY.LATEST_DATE
        AND SUMMARY.BEFORE_WEIGHT IS NOT NULL
)
SELECT 
    CK_DATE,
    CODE,
    NAME,
    CHG_WT
FROM TEMP
WHERE
    ABS(CHG_WT) >= 5
ORDER BY
    CHG_WT DESC,
    CODE DESC;
提出情報
提出日時2024/06/25 20:19:37
コンテスト第13回 SQLコンテスト
問題体重差分
受験者Udwei22
状態 (詳細)AC
(Accepted: 正答)
メモリ使用量84 MB
メッセージ
テストケース(通過数/総数)
2/2
状態
メモリ使用量
データパターン1
AC
84 MB
データパターン2
AC
84 MB