Ciao,
sto cercando di fare un'UPDATE da una tabella ad un'altra.
Nella tabella di Update ho un campo ID, un campo Data ed campo valore (Intero).
Primo problema:
Ad ogni ID dovrei far corrispondere la data ed il valore intero corrispondente.
Ogni data contiene piú interi ed ogni intero é presente in date differenti. Vorrei importare i valori scegliendo la data piú recente.
Se non li dovessi importare in un'altra tabella sarebbe semplice:
SELECT ID, MAX(date)
FROM Table_A
WHERE date BETWEEN '2011-11-28' And '2011-12-02'
GROUP BY OpID
Dovendoli peró importare non so come selezionare MAX(date):
UPDATE Table_B
JOIN Table_A
ON Table_A.ID = Table_B.ID
SET Table_A.date = Table_B.date, Table_A.value = Table_B.value
WHERE (SELECT MAX(dateID) FROM Table_A WHERE date BETWEEN '2011-11-28' And '2011-12-02'
GROUP BY ID)
Ma cosí facendo mi restituisce il seguente errore:
/* SQL Error (1242): Subquery returns more than 1 row */
/* 0 rows affected, 0 rows found. Duration for 0 of 1 query: 0,000 sec. */
e sono d'accordo ma non so come inserire quei campi altrimenti...!?
Secondo problema:
oltre ad inserire i dati per ID, ho altri ID che vorrei aggiungere...é possibile fare un'unica query che si aggiunge alla precedente o ne dovró fare due separate!?