27,580
社区成员
发帖
与我相关
我的任务
分享
declare @tb table (姓名 varchar(10),性别 varchar(64),出生年月 datetime)
insert @tb select '张三','男','1970-01-05'
insert @tb select '李四','女','1982-02-03'
insert @tb select '王五','男','1986-05-02'
insert @tb select '黑八','女','1983-10-01'
select *,dateadd(mm,-3,dateadd(yy,(case when 性别='男' then 60 when 性别='女' then 55 end),出生年月)) as '退休时间'
from @tb
mssql :
select *
from table
where datediff(d,birthday,dateadd(mm,3,dateadd(yy,-60,getdate()))>0 and sex = '男'
union all
select *
from table
where datediff(d,birthday,dateadd(mm,3,dateadd(yy,-55,getdate()))>0 and sex = '女'