表A 如下姓名 排序
----------
张三 1
张三 2
李四 1
李四 2
王五 1
赵六 1
要求根据表A 要求生成结果如下(当前状态列,如为该员的最后1条记录,则为1 否则为0)姓名 排序 当前状态
-----------------------
张三 1 0
张三 2 1
李四 1 0
李四 2 1
王五 1 1
赵六 1 1用GROUP BY 找出最大该员的最大排序 真添加进来是可以 但是数据有几十万条,用GROUP BY 貌似 效率极低不知道有没有别的办法
----------
张三 1
张三 2
李四 1
李四 2
王五 1
赵六 1
要求根据表A 要求生成结果如下(当前状态列,如为该员的最后1条记录,则为1 否则为0)姓名 排序 当前状态
-----------------------
张三 1 0
张三 2 1
李四 1 0
李四 2 1
王五 1 1
赵六 1 1用GROUP BY 找出最大该员的最大排序 真添加进来是可以 但是数据有几十万条,用GROUP BY 貌似 效率极低不知道有没有别的办法
case when not exists(
select 1 from a where 姓名=t.姓名 and 排序>t.排序)
then 1 else 0 end 当前状态
from a t