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

Query di aggiornamento di Oracle con join

La tua query mi sembra a posto, ho appena aggiunto l'alias tabella. La tua query aggiornerà tutti i record nella tabella1. Che errore stai ricevendo...??

Suggerimenti,

a) A meno che non desideri aggiornare tutti i record, aggiungi una clausola where nella query per evitare di aggiornare tutti i record...

b) Se stai ricevendo (ORA-01427:la sottoquery a riga singola restituisce più di una riga), significa che la sottoquery correlata (tra parentesi) manca di alcune condizioni per farla recuperare solo 1 riga per epcclass_id.

update table1 Pr
set Pr.code = (select t2.class_attr_value 
               from table2 t2 
               where  t2.class_attr_name = 'sample' 
               and t2.epclass_id = Pr.epcclass_id 
              );