oracle的分组排序:
select * from (
select row_number() over(partition by ms.school_id order by ms.create_time desc) mm,ms.* from mark_switch ms
) t1 where t1.mm=1
mysql的分组排序:
1、mysql排序并加上序号:
select (@i:=@i+1) index,works_info_data.*
from works_info_data ,(select @i:=0) it
2、分组后排序:
select * from
(select
(@i:= case
when @deptId = t_emp.school_id
then @i+1
else 1
end
) rownum,
t_emp.*,
(@deptId:=t_emp.school_id)
from
(select * from mid_school_grade_info order by school_id) t_emp,#这个地方必须是排序好的表
(select @i:=0) as a
) b
where b.rownum=2