PDA

View Full Version : [ORACLE] Query di aggiornamento


Spike79
07-01-2008, 09:59
Ciao, ho un problema con una query di Update...
Allora, ho una tabella cosė composta:

NUM_IND
COD_BASE
CAMPO99
DATA_FINE

I record sono due per ogni NUM_IND/COD_BASE, uno con CAMPO99 a NULL, l'altro no, a seconda che DATA_FINE sia APERTA (01.01.2099) o meno.

E devo fare in modo che il valore di CAMPO99 non sia pių NULL, ossia devo aggiornare tutti i CAMPO99 in modo che prendano il valore dello stesso CAMPO99 per la stessa chiave.

In Access ho creato una query cosė:
UPDATE Tabe INNER JOIN Tabe AS Tabe_1 ON (Tabe.COD_BASE = Tabe_1.COD_BASE) AND (Tabe.NUM_IND = Tabe_1.NUM_IND)
SET Tabe.CAMPO99 = TABE_1.CAMPO99
WHERE (((Tabe_1.DATA_FINE)<>#1/1/2099#));


e funziona benissimo....ma in Oracle ? come la posso trasportare ?
Usando una semplice query di Update , ovviamente senza Join, non riesco a fargliela 'digerire'....

shinya
07-01-2008, 13:28
Prova a guardare qua http://www.psoug.org/reference/update.html

Dovresti usare una sintassi tipo


update tab
set col = (select col1 from tab where ...)
where col = ...


una roba cosi...