当前位置:首页 » 编程语言 » sql计算工龄

sql计算工龄

发布时间: 2022-05-02 11:54:53

sql编写的工龄计算和它所产生的值,小于等于15号算本月大于16号按下月开始计算工龄 大于6个月就有补贴;

select
(casewhen
((casewhen[工龄起算日]isnullthen0
elsedatediff(month,[工龄起算日],SalaryDate)+(casewhendatepart(day,[工龄起算日])<=15then1else0end)
end)
)<=6then0
else(casewhenemployeetype=N'经理'then100
whenemployeetypein(N'主管',N'领班')then80
whenemployeetype=N'员工'then50
else0
end)
end
)as[补贴]

看上面这个sql是否符合要求。

㈡ 已知工人的入职时间《hire_date》,怎样用SQL语句,查询出工人的工人的工龄。字段是datetime

工作月数:
select datediff(mm,hire_date,getdate()) from tablename
工作年数:
select datediff(mm,hire_date,getdate())/12 from tablename

㈢ SQL语句如何根据出生日期计算年龄、工作时间计算工龄

那个窗口改不了了
select convert(datetime,case Len(Rtrim(C)) when 15 then '19' + SubString(C,7,2) + '-' + SubString(C,9,2) + '-' + SubString(C,11,2) when 18 then SubString(C,7,4) + '-' + SubString(C,11,2) + '-' + SubString(C,13,2) else A0111 end )
from A
查出的结果都是日期格式吗?如果不是说明C列有数据不对
select datediff(year,convert(datetime,case Len(Rtrim(C)) when 15 then '19' + SubString(C,7,2) + '-' + SubString(C,9,2) + '-' + SubString(C,11,2) when 18 then SubString(C,7,4) + '-' + SubString(C,11,2) + '-' + SubString(C,13,2) else A0111 end
),getdate())
from C
又怎么样
再就是B列的数据类型是什么?

㈣ SQLserver2000查询中,知道一个职员的入职日期如(job_date),怎么样查询工龄啊急

use pubs
select year(date(出生日期))- year(date(工作日期)) as 工龄 from 雇佣表 into table 表名

热点内容
编译好的内核如何升级另一台主机 发布:2025-05-15 02:00:06 浏览:757
弹反脚本 发布:2025-05-15 01:58:24 浏览:585
安卓按键大师怎么用 发布:2025-05-15 01:54:12 浏览:686
手机ea服务器连不上怎么办 发布:2025-05-15 01:35:03 浏览:450
数据库数据插入语句 发布:2025-05-15 01:30:01 浏览:871
js是无需编译直接运行吗 发布:2025-05-15 01:28:30 浏览:476
android文件夹重命名 发布:2025-05-15 01:13:50 浏览:481
cns脚本 发布:2025-05-15 01:13:38 浏览:722
数据结构与算法笔试题 发布:2025-05-15 01:04:20 浏览:417
搜狗输入法如何直接编辑配置文件 发布:2025-05-15 00:51:47 浏览:668