如何将 MS SQL Date 或 DateTime 转换为 OADate?
How to convert MS SQL Date or DateTime to OADate?
我知道我们可以将 OADateTime(数字格式有时 excel 呈现给我们而不是日期时间)转换为有效的 DateTime,如下所示 -
SELECT CAST(43982 AS datetime) -2
结果为 2020-05-31 00:00:00.000.
但是我们如何在 MS 中将 DateTime 转换为 OADateTime SQL?
最简单的方法是从给定日期中减去 OADate 纪元,例如:
declare @OADateEpoch date = convert(date, '1899-12-30', 126);
declare @yourDateTime datetime = convert(date, '2020-05-31T00:00:00.000', 126);
select datediff(dd, @OADateEpoch, @yourDateTime);
其中 returns 43982
.
我知道我们可以将 OADateTime(数字格式有时 excel 呈现给我们而不是日期时间)转换为有效的 DateTime,如下所示 -
SELECT CAST(43982 AS datetime) -2
结果为 2020-05-31 00:00:00.000.
但是我们如何在 MS 中将 DateTime 转换为 OADateTime SQL?
最简单的方法是从给定日期中减去 OADate 纪元,例如:
declare @OADateEpoch date = convert(date, '1899-12-30', 126);
declare @yourDateTime datetime = convert(date, '2020-05-31T00:00:00.000', 126);
select datediff(dd, @OADateEpoch, @yourDateTime);
其中 returns 43982
.