sql >> データベース >  >> RDS >> Oracle

Oracle MERGEステートメントエラー(ORA-30926)

    最初の(そして最も明白な)答えは、重複がないようにデータをクリーンアップすることです。ご提供いただいたサンプルデータはバグの結果である可能性があります。

    mergeについて ステートメント、データが実際に純粋に複製されている場合は、distinctを使用できます。 :

    MERGE INTO maintable pr
    USING      (SELECT DISTINCT contract,
                                membertype,
                                address1,
                                city,
                                state,
                                zipcode,
                                countrycode
                FROM   incrementaltable pra
                WHERE  pra.membertype = 'Parent')
    ON         (pr.contract = pra.contract)
    WHEN MATCHED THEN
       UPDATE SET pr.address1 = pra.address1,
                  pr.city = pra.city,
                  pr.state = pra.sate,
                  pr.zipcode = pra.zipcode,
                  pr.countrycode = pra.countrycode
          WHERE      address1 IS NULL AND pr.membertype <> 'Parent'
    



    1. クエリパフォーマンスインサイト:Azure SQLデータベースのリソースを消費するものを発見しますか?

    2. MySQL-文字列から正確な単語を検索

    3. MySQL列で二重引用符を検索

    4. ペットケアデータモデル