Mysql
 sql >> Database >  >> RDS >> Mysql

Ottieni riga con max(colonna)

Altri database (ad es. MS SQL Server) non ti consentono di combinare valori aggregati con valori non aggregati, solo perché otterresti un risultato sbagliato.

Quindi, se desideri valori non aggregati dal record in cui si trovava il valore massimo, unisci nuovamente la tabella:

select x.user, y.col1, y.col2, x.col3
from (
  select user, max(col3) as col3
  from table
  group by user
) x
inner join table y on y.user = x.user and y.col3 = x.col3
order by x.user