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