PDA

View Full Version : [SQL] Query


holymind
07-09-2009, 09:40
Ciao a tutti,
avrei bisogno di supporto per una query in SQL su Oracle 10.
Questa query dovrebbe estrarre per ogni campo "primo", tutti i record in cui il campo "secondo" e' il maggiore (tra i record del campo "primo")

Faccio un esempio.
Data questa tabella...

primo secondo terzo

a 15 z
a 16 w
b 12 x
b 13 c
c 14 m
c 12 n

La query dovrebbe estrarre questo...


primo secondo terzo

a 16 w
b 13 c
c 14 m

Riuscite ad aiutarmi?
Grazie

morskott
07-09-2009, 09:48
Prima cosa che mi è venuta

SELECT *
FROM TABELLA T1
WHERE T1.SEC IN (SELECT MAX(T2.SEC)
FROM TABELLA T2
WHERE T1.PRIMO=T2.PRIMO)

holymind
07-09-2009, 10:13
Grazie Mille, funziona!

gugoXX
07-09-2009, 22:47
A me era venuta cosi' :D


SELECT * FROM src WHERE ROWID IN
(SELECT MAX(ROWID) KEEP (DENSE_RANK FIRST ORDER BY secondo DESC) AS rid
GROUP BY primo);