- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- [AIUTO] - errore nel mysql
-
[AIUTO] - errore nel mysql
Ho una tabella composta da id, votante, utente_votato, voto.
Vorre elencare gli utenti con la media voti + alta, a condizione che questi abbiamo + di 10 voti ricevuti...
ho pensato a questa query:
select count(voto) as numero_voti, utente_votato, votante, avg(voto) as media_voti from membri_votazione where numero_voti > '10' group by utente_votato order by a desc, media_voti desc limit 10
ma il mysql mi da questo errore:
#1054 - Unknown column 'numero_voti' in 'where clause'
è vero che non esite la colonna, ma io l'ho dichiarata - penso - quando creo la query, giusto?
come si può risolvere la questione?
-
nessuna idea?
-
Prova così:
select numero_voti, utente_votato, votante, avg(voto) as media_voti from membri_votazione where (SELECT count(voto) as numero_voti FROM membri_votazione WHERE numero_voti > '10') group by utente_votato order by a desc, media_voti desc limit 10;
O cmq con qualche modifica di questa. Insomma secondo me devi fare due select. Una che ti trovi tutti gli utenti con più di 10 voti e un'altra per selezionare tutti i dati degli utenti restituiti dalla prima select. Ma potrei anche essermi sbagliato. Il fatto di non avere il database davanti agli occhi ed essere un pò rinco***nito oggi potrebbe influenzare la mia risposta...
-
beh ho risolto il problema sostituendo la parte col where con:
having numero_voti > 10