sql >> Database teknologi >  >> RDS >> Oracle

Oracle:PÅ DUBLIKAT NØGLEOPDATERING

Oracle har ikke on duplicate key update Brug MERGE i stedet:

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. Hvornår og hvordan bruges SQL PARTITION BY-sætningen

  2. Konvertering af tal til ord i MYSQL-resultat! Brug af Query

  3. Begrundelse for I STEDET FOR triggere – del 1

  4. Oprettelse af valgfrie afhængigheder