Massimizzazione date all'interno di un'UPDATE

di il
1 risposte

Massimizzazione date all'interno di un'UPDATE

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!?

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte