sql >> Database >  >> RDS >> Mysql

db2-equivalent van MySql REPLACE INTO

DB2 gebruikt de SQL-standaard MERGE verklaring om in wezen hetzelfde te doen. De syntaxis is anders:

MERGE INTO table_to_upsert AS tab
USING (VALUES
        (1, 2, 3),
        (4, 5, 6),
        (7, 8, 9)
        -- more rows
    ) AS merge (C1, C2, C3)
    ON tab.key_to_match = merge.key_to_match
    WHEN MATCHED THEN
        UPDATE SET tab.C1 = merge.C1,
                   tab.C2 = merge.C2,
                   tab.C3 = merge.C3
    WHEN NOT MATCHED THEN
        INSERT (C1, C2, C3)
        VALUES (merge.C1, merge.C2, merge.C3)


  1. Kan MySql geneste SP een knelpunt zijn?

  2. Is het een slecht ontwerp om arrays in een database te gebruiken?

  3. Over knelpunten in de prestaties van SQL Server gesproken

  4. Oracle in C#, bindvariabelen en queries zoals ID IN (1, 2, 3)