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

Oracle SQL-opdatering baseret på underforespørgsel mellem to tabeller

Der er to måder at gøre det, du prøver på

Den ene er en Multi-column Correlated Update

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

DEMO

Du kan bruge flet

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. Mysql eksisterer vs IN - korreleret underforespørgsel vs underforespørgsel?

  2. PLSQL CASE NÅR TILSTAND

  3. hvordan man flytter fingeraftryksskabelon til oracle database

  4. Et-til-én-forhold med forskellige primære nøgler i EF 6.1-koden først