Buonasera a tutti,
Io ho 5 tabelle cosi strutturate e popolate:
tabella CDC
----------------------------------------------------------------------
idcdc - cdc - descrizione
------------------------------------------------------------------------
1 - DTDT – direzione blablabla
2 - DTLL - direzione pepepe
------------------------------------------------------------------------
tabella CORSI
----------------------------------------------------------------------
id - idtipocorso - nomecorso - note - dataesame - scadenza
------------------------------------------------------------------------
1 - 1 - 4° Corso lavoratori – prova – 2013-03-06 - 2015-03-06
2 - 1 - 16° Corso lavoratori - prova - 2015-02-08 - 2017-02-08
3 - 1 - 1° corso sfaticati – prova - 2014-05-14- 2016-05-14
------------------------------------------------------------------------
tabella FREQUENZE
----------------------------------------------------------------------
idfrequenza - idutente - idcorso
------------------------------------------------------------------------
1 - 1 - 1
2 - 1 - 2
3 - 1 - 3
tabella TIPOCORSI
----------------------------------------------------------------------
idcorso - descrizione - validita
------------------------------------------------------------------------
1 - Lavoratori – 24
2 - sfaticati - 24
------------------------------------------------------------------------
tabella UTENTI
----------------------------------------------------------------------
iduser - idcdc - cognome - nome
------------------------------------------------------------------------
1 - 1 – Pippo- Pluto
2 - 2 – Rrrrr- Ssssss
------------------------------------------------------------------------
Applico la query:
SELECT Utenti.Cognome, Utenti.Nome, corsi.nomecorso, corsi.scadenza,
tipocorsi.validita, tipocorsi.idcorso, cdC.cdc
FROM utenti
INNER JOIN cdc
ON cdc.idcdc = utenti.idcdc
INNER JOIN frequenze
ON frequenze.idutente = Utenti.iduser
INNER JOIN corsi
ON frequenze.idcorso=Corsi.id
INNER JOIN tipocorsi
ON tipocorsi.idcorso=corsi.idtipocorso
WHERE UTENTI.iduser=1
il resultset è:
----------------------------------------------------------------------
cognome - nome - nomecorso - scadenza - validita – idcorso - cdc
------------------------------------------------------------------------
Pippo - Pluto - 4° Corso lavoratori – ‘2015-03-06’ - 24 – 1 - DTDT
Pippo - Pluto - 16° Corso lavoratori – ‘2017-02-08’- 24 – 1 - DTDT
Pippo - Pluto - 1° corso sfaticati – ‘2016-05-14’- 24 – 2 - DTDT
------------------------------------------------------------------------
Ma se io a parità di "idcorso " vorrei che mi fosse restituito solo quello con la data di scadenza + alta come posso fare?
nel caso specifico vorrei che il risultato fosse:
----------------------------------------------------------------------
cognome - nome - nomecorso - scadenza - validita – idcorso - cdc
------------------------------------------------------------------------
Pippo - Pluto - 16° Corso lavoratori – ‘2017-02-08’- 24 – 1 - DTDT
Pippo - Pluto - 1° corso sfaticati – ‘2016-05-14’- 24 – 2 - DTDT
------------------------------------------------------------------------
Ho provato con un "max(corsi.scadenza)" ma non va..
lo stesso con "group by corsi.idtipocorso"
in pratica con max mi da si solo il valore più alto di data ma come nomecorso quello del più vecchio.
Qualcuno a qualche consiglio?
Vi ringrazio si da ora per qualsiasi suggerimento.

Rispondi quotando
