我有 2 个字段。
出生 = 数据类型十进制 (12,4) & 日期 = 数据类型日期
Birth Date
19650101 2015-07-09
如何得到这样的结果
我想要这样的结果
Birth Date
1965-01-01 2015-07-09
其中出生是日期数据类型而不是小数 (12,4)
最佳答案
要将数字 19650101
转换为日期,请使用
CONVERT(DATETIME, CAST(Birth AS VARCHAR(8)), 112)
要获取年数(精确到小数点后一位),您可以执行以下操作:
ROUND(
DATEDIFF(day,
CONVERT(DATETIME, CAST(Birth AS VARCHAR(8)), 112),
[Date])/365.25
,1)
这并不准确,但应该足够接近十分之一年。
关于sql - 将 Decimal 或 Varchar 转换为日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31319348/