ORACLE版本:
select a1., row_number() over(partition by a1.p_id
order by
a1.dat_project_plan_id) as rankNum
from
dat_project_plan a1
where a1.plan_status<>0
and a1.dat_project_id=10342
order by to_number(replace(a1.plan_no,’-’,’’))
MYSQL版本:
select a. ,if(@pId=a.p_id or (@pId is null and a.p_id is null),
@rank:=@rank+1,@rank:=1) as rankNum,
@pId:=a.p_id from dat_project_plan a
where a.plan_status<>0
and a.dat_project_id=10342
order by CAST(replace(a.plan_no,’-’,’’) AS DECIMAL)
MySQL方式实现Oracle的row_number() over(partition by A order by B)函数
最新推荐文章于 2023-05-29 10:52:30 发布