作业帮 > 综合 > 作业

请教一下mysql下有没有类似oracle的函数max over partition by的替代方案

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/05/12 06:44:00
请教一下mysql下有没有类似oracle的函数max over partition by的替代方案
现在有这样一个需求:
原表:
列a 列b
a 1
a 2
b 4
b 1
c 0
d 2
变成:
列a 列b 列c
a 1 2
a 2 2
b 4 4
b 1 4
c 0 0
d 2 2
进而得到:
列a 列b 列c
a 2 2
b 4 4
c 0 0
d 2 2
就是挑出按照列A分组最大
请问在mysql下有什么替代方案吗?
请教一下mysql下有没有类似oracle的函数max over partition by的替代方案
-- 有的,可以子查询 来完成 分组取前N条数据
select * from table_name a where 
4>(select count(*) from table_name where gid=a.gid and col2>a.col2) 
order by a.gid,a.col2 desc;
再问: 为什么有个4?
再答: 把 4 改成 1
再问: 谢谢您的回答,但是你说的不对,请看清我的题目,希望得到的是筛选出每个分组b列最大的记录