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

Oracle:重複するキーの更新について

    Oracleにはon duplicate key updateがありません MERGEを使用する 代わりに:

    MERGE INTO my_table trg  
    USING (SELECT 30 as question_id,0 as ug FROM DUAL
    UNION ALL 
    SELECT 31,1 FROM DUAL) src ON (src.question_id = trg.question_id)
    WHEN NOT MATCHED THEN INSERT(question_id, ug) VALUES
    (src.question_id, src.ug)
    WHEN MATCHED THEN UPDATE
    SET trg.ug = src.ug
    



    1. SQLエラー:ORA-02000:ID列ベースの表を作成するときにALWAYSキーワードがありません

    2. 過去3か月のデータを取得するためのSQLクエリ

    3. ヒープテーブルへのINSERT…SELECTによる最小限のロギング

    4. postgresql:INSERT INTO ...(SELECT * ...)