sql >> Database >  >> RDS >> Oracle

Oracle SQL-update op basis van subquery tussen twee tabellen

Er zijn twee manieren om te doen wat u probeert

Een daarvan is een Gecorreleerde update met meerdere kolommen

UPDATE PRODUCTION a
SET (name, count) = (
  SELECT name, count
  FROM STAGING b
  WHERE a.ID = b.ID);

DEMO

U kunt samenvoegen gebruiken

MERGE INTO PRODUCTION a
USING ( select id, name, count 
          from STAGING ) b
ON ( a.id = b.id )
WHEN MATCHED THEN 
UPDATE SET  a.name = b.name,
            a.count = b.count

DEMO



  1. ORA-29283:ongeldige bestandsbewerking ORA-06512:op SYS.UTL_FILE, regel 536

  2. PHPExcel zal niet exporteren naar CSV

  3. Hoe een Postgresdump herstellen tijdens het bouwen van een Docker-image?

  4. Laravel:Fout [PDOException]:Kan stuurprogramma niet vinden in PostgreSQL