用excel表格模拟数据库表中的数据
以姓名为主键,找出每个人收入最高月的的行。
即每人一行,这一行对应这个人收入为最高。
oracel中直接使用窗口函数就行了
select t.* from (
select *,ROW_NUMBER () OVER (PARTITION BY 姓名 ORDER BY 收入 desc ) as 序号 from 表名称
) t
where 1=1
and t.序号=1
SELECT A.* FROM table A INNER JOIN (
SELECT 姓名,max(收入) [max_] from table group by 姓名
) B ON A.姓名=B.姓名 AND A.收入=b.max_
select * from biao
where 姓名||月份 = (select 姓名||月份 from (select 姓名,月份,max(收入) from 表 group by 姓名,月份))