コンテストの制限時間が終了しました。
以降も提出を行うことができますが、順位集計には反映されません。
以降も提出を行うことができますが、順位集計には反映されません。
ソースコード
WITH Latest_Checkup AS (
SELECT
h1.MEMBER_CODE,
h1.CHECKUP_DATE AS LATEST_DATE,
h1.WEIGHT AS LATEST_WEIGHT,
(SELECT h2.CHECKUP_DATE
FROM HEALTH_CHECKUP h2
WHERE h2.MEMBER_CODE = h1.MEMBER_CODE
AND h2.CHECKUP_DATE < h1.CHECKUP_DATE
ORDER BY h2.CHECKUP_DATE DESC
LIMIT 1) AS PREVIOUS_DATE,
(SELECT h2.WEIGHT
FROM HEALTH_CHECKUP h2
WHERE h2.MEMBER_CODE = h1.MEMBER_CODE
AND h2.CHECKUP_DATE < h1.CHECKUP_DATE
ORDER BY h2.CHECKUP_DATE DESC
LIMIT 1) AS PREVIOUS_WEIGHT
FROM
HEALTH_CHECKUP h1
WHERE
h1.CHECKUP_DATE = (
SELECT MAX(h3.CHECKUP_DATE)
FROM HEALTH_CHECKUP h3
WHERE h3.MEMBER_CODE = h1.MEMBER_CODE
)
),
Weight_Changes AS (
SELECT
lc.MEMBER_CODE,
lc.LATEST_DATE AS CK_DATE,
lc.LATEST_WEIGHT,
lc.PREVIOUS_WEIGHT,
(lc.LATEST_WEIGHT - lc.PREVIOUS_WEIGHT) AS CHG_WT
FROM
Latest_Checkup lc
WHERE
ABS(lc.LATEST_WEIGHT - lc.PREVIOUS_WEIGHT) >= 5
)
SELECT
wc.CK_DATE,
wc.MEMBER_CODE AS CODE,
m.LAST_NAME || m.FIRST_NAME AS NAME,
CASE
WHEN CAST(wc.CHG_WT AS INTEGER) = wc.CHG_WT THEN CAST(wc.CHG_WT AS INTEGER)
ELSE printf('%.1f', wc.CHG_WT)
END AS CHG_WT
FROM
Weight_Changes wc
JOIN MEMBER_MST m ON wc.MEMBER_CODE = m.MEMBER_CODE
ORDER BY
ABS(wc.CHG_WT) DESC,
wc.MEMBER_CODE DESC;
提出情報
提出日時 | 2024/06/21 12:47:13 |
コンテスト | 第13回 SQLコンテスト |
問題 | 体重差分 |
受験者 | 960715 |
状態 (詳細) | WA (Wrong Answer: 誤答) |
メモリ使用量 | 97 MB |
メッセージ
テストケース(通過数/総数)
0/2
状態
メモリ使用量
データパターン1
WA
97 MB
データパターン2
WA
93 MB