101 messaggi dal 03 gennaio 2002
www.f1grandprix.it
ciao a tutti,
ho una tabella "Pronostico" che contiene i seguenti campi:

-punti: numerico
-id_utente: testo
-id_sessione: numerico (può essere =1; =2;=3)
-id_gp: testo (contiene il nome del Gran Premio)

per ogni id_utente e id_gp ci sono 3 record (uno per ogni id_sessione diverso). Ora ho bisogno di visualizzare i nomi degli utenti (id_utente) con accanto il punteggio totale (sommando i 3 record) di tutti i GP. Ho provato con questa query ma visualizza 3 record per ogni utente mentre io voglio la somma..:

SELECT [id_utente], [id_sessione], sum([punti]) AS punteggio_totale
FROM pronostico
GROUP BY [id_sessione], [id_utente]
ORDER BY punteggio_totale;

ciao!


Maurizio Manna
http://www.f1grandprix.it
22 messaggi dal 19 dicembre 2002
Se vuoi la somma di tutto devi togliere dalla SELECT e dalla GROUP BY il campo id_sessione, altrimenti la group by raggruppa anche per quello:

SELECT [id_utente], sum([punti]) AS punteggio_totale
FROM pronostico
GROUP BY [id_utente]
ORDER BY punteggio_totale;

Fulvio .NET is on the air
101 messaggi dal 03 gennaio 2002
www.f1grandprix.it
funziona ma come mai l'order by non funge?? Ordina i record in base alla chiave primaria...

Maurizio Manna
http://www.f1grandprix.it
823 messaggi dal 05 agosto 2002
forse non riesce solamente ad usare l'alias, prova a scrivere order by sum...

Stick to your guns.
Formazione su MySQL o Firebird? Contattami!

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.