mysql group by max code example

Example 1: mysql group by limit

CREATE TABLE yourtable (
  year int,
  id varchar(20),
  rate decimal(10,2)
);

SELECT yourtable.*
FROM   yourtable 
INNER JOIN (
  SELECT   id, GROUP_CONCAT(year ORDER BY rate DESC) grouped_year
  FROM     yourtable
  GROUP BY id) group_max
ON yourtable.id = group_max.id AND FIND_IN_SET(year, grouped_year) <=5
ORDER BY yourtable.id, yourtable.year DESC;

Example 2: mysql group by max value

-- MySql: First result only returned, so Person with max age in each Group
select * 
from (select * from mytable order by `Group`, age desc, Person) x
group by `Group`;

Tags:

Sql Example