员工的工龄计算

根据员工的入职日期,在 sql  SERVER 上怎么计算他的工龄。(15号之前入职当月开始计算工龄,15号之后入职次月开始计算工龄),在sql上能写出来嘛?求助各位大佬。

wangjiaojiao 发布于 2019-11-27 14:19
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
JackloveLv7高级互助
发布于2019-11-27 14:31(编辑于 2019-11-27 14:58)


select
name,
case when day(日期)>15 THEN  datediff(month,日期,getdate())-1
else  datediff(month,日期,getdate()) end
from 
[dbo].[q]

日期改成你的入职日期字段就好了 表也改成自己的表

  • wangjiaojiao wangjiaojiao(提问者) 按月计算,大佬,你这样计算的话,15号之后入职的也会算成一个月了
    2019-11-27 14:46 
  • Jacklove Jacklove 回复 wangjiaojiao(提问者) 在做个case when判断一下就好了
    2019-11-27 14:49 
  • Jacklove Jacklove 回复 wangjiaojiao(提问者) case when 去判断入职日期的日小于15的话在后面的结果-1
    2019-11-27 14:50 
  • Jacklove Jacklove 回复 wangjiaojiao(提问者) 上面的回答改好了 你重新试一下
    2019-11-27 14:57 
  • wangjiaojiao wangjiaojiao(提问者) 回复 Jacklove 谢谢大佬了
    2019-11-27 15:07 
  • 2关注人数
  • 405浏览人数
  • 最后回答于:2019-11-27 14:58
    请选择关闭问题的原因
    确定 取消
    返回顶部