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