工作年限的时间问题

每年8月增加1年限的情况

比如一个字段存入职年月日 现在要求求今年工作年限怎么写sql


wangzhongqiang 发布于 2019-8-13 17:18
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
joyce_lnkLv3见习互助
发布于2019-8-13 17:19(编辑于 2019-8-13 17:32)

当前时间和入职时间相减    格式化成年即可




select trunc(months_between(to_date('08/06/2015','mm/dd/yyyy'),to_date('08/06/2013','mm/dd/yyyy'))/12)  from dual;


直接算出具体工龄,不用每年+1

最佳回答
0
张洪威Lv6高级互助
发布于2019-8-13 17:25

2019年7月入职的话,按8月增加1年的话来算,工作年限是1年。


case when month(字段)<8 then 2019-year(字段)+1 

else 2019-year(字段)  end 

最佳回答
0
firegunzxLv6高级互助
发布于2019-8-13 17:26

DATEDIFF ( year , 入职日期 , GETDATE() )

最佳回答
0
盈缺Lv0见习互助
发布于2019-8-14 13:39

可以试一下时间差函数TIMESTAMPDIFF

  • 5关注人数
  • 554浏览人数
  • 最后回答于:2019-8-14 13:39
    请选择关闭问题的原因
    确定 取消
    返回顶部