コンテストの制限時間が終了しました。
以降も提出を行うことができますが、順位集計には反映されません。
以降も提出を行うことができますが、順位集計には反映されません。
ソースコード
SELECT
COALESCE(IT_M.ITEM_CODE,IT_H.ITEM_CODE) AS CODE
,COALESCE(IT_M.ITEM_NAME,IT_H.ITEM_NAME) AS NAME
,CASE
WHEN IT_H.USER_UPDATE_DATETIME IS NULL
THEN 'ADDED'
WHEN IT_M.USER_UPDATE_DATETIME IS NULL
THEN 'DELETED'
WHEN IT_M.USER_UPDATE_DATETIME <> IT_H.USER_UPDATE_DATETIME
THEN 'UPDATED'
END AS COMP_RSLT
FROM
ITEM AS IT_M
FULL OUTER JOIN ITEM_HISTORY AS IT_H
ON IT_M.ITEM_CODE = IT_H.ITEM_CODE
IT_M.USER_UPDATE_DATETIME IS NOT IT_H.USER_UPDATE_DATETIME
ORDER BY
CODE DESC;
SELECT
-- 商品データが存在する場合は、商品データの商品コードを表示し、存在しない場合は履歴データより表示する
COALESCE(IT_M.ITEM_CODE, IT_H.ITEM_CODE) AS CODE
, COALESCE(IT_M.ITEM_NAME, IT_H.ITEM_NAME) AS NAME
, CASE
-- 履歴データに存在しない場合
WHEN IT_H.USER_UPDATE_DATETIME IS NULL
THEN 'ADDED'
-- 商品データに存在しない場合
WHEN IT_M.USER_UPDATE_DATETIME IS NULL
THEN 'DELETED'
-- 両方に存在して、担当者更新日時が違う場合
WHEN IT_M.USER_UPDATE_DATETIME <> IT_H.USER_UPDATE_DATETIME
THEN 'UPDATED'
END AS COMP_RSLT
FROM
ITEM AS IT_M
-- 完全外部結合で、商品と商品履歴の全データを取得します
FULL OUTER JOIN ITEM_HISTORY AS IT_H
ON IT_M.ITEM_CODE = IT_H.ITEM_CODE
WHERE
-- 担当者更新日が違うデータを対象とします
-- IS NOTを使用してNULL値も比較可能とします
IT_M.USER_UPDATE_DATETIME IS NOT IT_H.USER_UPDATE_DATETIME
ORDER BY
CODE DESC;
提出情報
提出日時 | 2024/07/30 14:04:24 |
コンテスト | 第12回 SQLコンテスト |
問題 | データ操作履歴 |
受験者 | bellsa0213 |
状態 (詳細) | RE (Runtime Error: 実行時エラー) |
メモリ使用量 | 104 MB |
メッセージ
SQLITE_ERROR: near "IT_M": syntax error
テストケース(通過数/総数)
0/3
状態
メモリ使用量
データパターン1
RE
101 MB
データパターン2
RE
104 MB
データパターン3
RE
104 MB