oregon ha scritto:
0056 ha scritto:
Grazie per il suggerimento, ma così non trovo solo la penultima di un paziente?
Invece io ho più pazienti con più visite e per tutti devo trovare la penultima.
Grazie
Confermo quanto detto prima sulla where che ti ha anche ricordato max
È ovvio che devi filtrare l'id del paxiente
Magari fraintendo... ma se dovesse estrarre l'ultimo record per "OGNI" paziente ad esempio ... una soluzione tipo questa pur con la WHERE opportuna non darebbe il risultato atteso... darebbe un risultato assoluto e non relativo.
Esempio data una tabella Movimenti di PRODOTTI se volessi sapere il valore massimo per ogni prodotto... io proporrei una cosa simile...
Select T1.Provenienza,MAXP.IdProdotto,MAXP.Massimo
From T1
RIGHT JOIN
(select IdProdotto, Max(Prezzo) as Massimo
From T1
Group By IdProdotto) AS MAXP
ON T1.IdProdotto=MAXP.IdProdotto AND T1.Prezzo=MAXP.Massimo
Ovviamente a questa ipotesi serve ora modificare predicato esattamente come suggerito da Antonio... quindi sulla tabella derivata introdurre il TOP2 con ordinamento decrescente e poi Il TOP1...
In ogni caso è un altro pezzo... di riflessione.