22,209
社区成员
发帖
与我相关
我的任务
分享
--测试数据
if not object_id(N'Tempdb..#T') is null
drop table #T
Go
Create table #T(员工id INT ,[入职时间] Date)
Insert #T
select 1,'2017-01-01' union all
select 2,'2018-08-08' union all
select 3,'2019-01-01' union all
select 4,'2010-08-08'
Go
--测试数据结束
SELECT *,DATEDIFF(YEAR,入职时间,GETDATE()) AS 年数
FROM #T
WHERE SUBSTRING(RTRIM(入职时间), 6, 6) = SUBSTRING(CONVERT(NVARCHAR(20), GETDATE(), 120), 6, 6);
https://bbs.csdn.net/topics/392259661
USE tempdb
GO
--测试数据
if not object_id(N'T') is null
drop table T
Go
CREATE TABLE T(
birthday DATETIME,
age AS DATEDIFF(YEAR,birthday,GETDATE()) --计算列
)
GO
INSERT INTO t(birthday) VALUES('1990-01-01')
--你可以试着修改你本机的时间,比如改为2018 年, 这里执行就自动变成 28 岁了
SELECT * FROM t
/*
birthday age
1990-01-01 27