ソースコード
WITH LatestTwoCheckups AS (
    SELECT 
        H1.MEMBER_CODE, 
        H1.CHECKUP_DATE AS CK_DATE,
        H1.WEIGHT AS CURRENT_WEIGHT,
        H2.WEIGHT AS PREVIOUS_WEIGHT,
        ROW_NUMBER() OVER (PARTITION BY H1.MEMBER_CODE ORDER BY H1.CHECKUP_DATE DESC) AS RN
    FROM 
        HEALTH_CHECKUP H1
    LEFT JOIN 
        HEALTH_CHECKUP H2
    ON 
        H1.MEMBER_CODE = H2.MEMBER_CODE 
        AND H1.CHECKUP_DATE > H2.CHECKUP_DATE
),
FilteredCheckups AS (
    SELECT 
        MEMBER_CODE, 
        CK_DATE, 
        CURRENT_WEIGHT, 
        PREVIOUS_WEIGHT,
        CURRENT_WEIGHT - PREVIOUS_WEIGHT AS CHG_WT
    FROM 
        LatestTwoCheckups
    WHERE 
        RN = 1
        AND PREVIOUS_WEIGHT IS NOT NULL
        AND ABS(CURRENT_WEIGHT - PREVIOUS_WEIGHT) >= 5
)
SELECT 
    F.CK_DATE AS CK_DATE,
    F.MEMBER_CODE AS CODE,
    M.LAST_NAME || M.FIRST_NAME AS NAME,
    CASE 
        WHEN F.CHG_WT = ROUND(F.CHG_WT) THEN CAST(F.CHG_WT AS INTEGER)
        ELSE ROUND(F.CHG_WT, 1)
    END AS CHG_WT
FROM 
    FilteredCheckups F
JOIN 
    MEMBER_MST M
ON 
    F.MEMBER_CODE = M.MEMBER_CODE
ORDER BY 
    CHG_WT DESC,
    CODE DESC;
提出情報
提出日時2024/06/21 12:09:50
コンテスト第13回 SQLコンテスト
問題体重差分
受験者960715
状態 (詳細)WA
(Wrong Answer: 誤答)
メモリ使用量85 MB
メッセージ
テストケース(通過数/総数)
0/2
状態
メモリ使用量
データパターン1
WA
85 MB
データパターン2
WA
84 MB