ソースコード
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