Ciao a tutti e buone feste!
Ho bisogno di estrarre da un DB un elenco di atleti e il relativo valore MAX per ogni gara a cui partecipano, esempio:
IDGARA 1
Atleta 1 max 5
Atleta 2 max 4
IDGARA 2
Atleta 1 max 17
Atleta 2 max 18
Con la query che ho costruito riesco ad estrarre gli atleti nelle rispettive gara ma il valore MAX non si riferisce alla singola gara ma solo al singolo atleta. In sostanza se l'atleta 1 in tutte le gare cui partecipa ha fatto registrare un valore MAX di 30 questo verrà preso anche nelle altre gare.
Seguendo l'esempio fatto sopra la query mi riporta:
IDGARA 1
Atleta 1 max 17 (invece di 5)
Atleta 2 max 18 (invece di 4)
IDGARA 2
Atleta 1 max 17
Atleta 2 max 18
La query che ho scritto è la seguente:
Ora il problema l'ho capito e cioè nel raggruppare per gara e nominativo la funzione MAX ma non riesco ad applicarla.
Qualcuno mi può dare una mano per favore?
Grazie e Buon Natale a tutti
Massimo
Ho bisogno di estrarre da un DB un elenco di atleti e il relativo valore MAX per ogni gara a cui partecipano, esempio:
IDGARA 1
Atleta 1 max 5
Atleta 2 max 4
IDGARA 2
Atleta 1 max 17
Atleta 2 max 18
Con la query che ho costruito riesco ad estrarre gli atleti nelle rispettive gara ma il valore MAX non si riferisce alla singola gara ma solo al singolo atleta. In sostanza se l'atleta 1 in tutte le gare cui partecipa ha fatto registrare un valore MAX di 30 questo verrà preso anche nelle altre gare.
Seguendo l'esempio fatto sopra la query mi riporta:
IDGARA 1
Atleta 1 max 17 (invece di 5)
Atleta 2 max 18 (invece di 4)
IDGARA 2
Atleta 1 max 17
Atleta 2 max 18
La query che ho scritto è la seguente:
SQL:
SELECT tabella_sport_atleti.id_nominativo, tabella_sport_atleti.id_gara, MAX(risultati.valore) AS best, tabella_atleti.nominativo, tabella_atleti.classe
FROM tabella_sport_atleti
LEFT JOIN tabella_atleti ON tabella_atleti.id_nominativo = tabella_sport_atleti.id_nominativo
LEFT JOIN risultati ON risultati.id_nominativo = tabella_sport_atleti.id_nominativo
GROUP BY tabella_sport_atleti.id_gara, tabella_sport_atleti.id_nominativo
Ora il problema l'ho capito e cioè nel raggruppare per gara e nominativo la funzione MAX ma non riesco ad applicarla.
Qualcuno mi può dare una mano per favore?
Grazie e Buon Natale a tutti
Massimo