salve, queste le tabelle:
tabella values:
user_id, field_id, value
tabella points:
user_id, points
il parametro che mi serve contiene la professione, ha field_id=16.
Quello che deve restituire la query è l'utente con punteggio massimo per ogni professione, ordinati dal punteggio massimo.
Esempio di risultato da ottenere:
questa è la mia query, ma c'è un errore logico, ogni record ha il punteggio massimo, ma non l'userid che ha quel punteggio..codice:user_id | value | max_points 10 | attore | 100 12 | cantante | 90 32 | musicista| 80
codice:SELECT c.user_id,c.value, MAX( p.points ) AS max_pts FROM values AS c INNER JOIN points AS p ON p.user_id = c.user_id WHERE c.field_id =16 GROUP BY c.value ORDER BY p.points DESC

Rispondi quotando
