题解 | 更新员工信息表

更新员工信息表

https://www.nowcoder.com/practice/1eb20d4bf7c5443da7b84105372c9070

with eu as (select EMPLOYEE_ID ,
    UPDATE_DT,
    row_number() over(partition by EMPLOYEE_ID order by UPDATE_DT desc) as rk,
    NEW_POSITION 
from EMPLOYEE_UPDATE)
select EMPLOYEE_ID,
    case when UPDATE_DT > LAST_UPDATE_DT then NEW_POSITION else POSITION end as POSITION,
    case when UPDATE_DT > LAST_UPDATE_DT then UPDATE_DT else LAST_UPDATE_DT end as LAST_UPDATE_DT
from EMPLOYEE_INFO ei
inner join eu
    using(EMPLOYEE_ID)
where rk = 1
order by EMPLOYEE_ID

全部评论

相关推荐

07-24 19:01
门头沟学院 Java
后天笔试,又要开始做题了
Sairus:明天10:00笔试
投递京东等公司10个岗位
点赞 评论 收藏
分享
06-20 17:42
东华大学 Java
凉风落木楚山秋:要是在2015,你这简历还可以月入十万,可惜现在是2025,已经跟不上版本了
我的简历长这样
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务