我正在使用AS400数据库和SQLServer 2008.我想要一种方法将日期,例如MM-DD-YYYY转换为lilian格式,然后再转换为T-SQL。有人知道吗?即使我将AS400中的数据转换为SQLServer 2008,我相信我仍然需要相同的功能。

有帮助吗?

解决方案

我认为没有内置功能。你能使用datediff函数转换为lilian日期格式吗?像这样:

declare @testDate DateTime;
set @testDate = '2009-01-01';
declare @lilianDate int;
-- the datediff statement will do the conversion
set @lilianDate = DATEDIFF(day, '1582-10-14', @testDate);
print @lilianDate

然后回来你可以用我想的类似方式使用dateadd()函数。

如果您在多个地方需要它,可以使UDF包装此功能。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top