如何更改迄今为止的天数?

-5 sql sql-server date sql-server-2008

如何更改sql server 2008中的天数?

  • 样品日:730677.
  • 输出:2000-07-11.

Jod*_*ell 6

你有问题,

SQL Sever表示的最早日期DateTime2'0001-01-01'

我们可以看到,在你的"纪元开始"之后366天

SELECT 730677 - DATEDIFF(
        day,
        CAST('0001-01-01' AS DATETIME2),
        CAST('2000-07-11' AS DATETIME2));
Run Code Online (Sandbox Code Playgroud)

要执行计算,您可以执行类似的操作

DECLARE @days INT = 730677;

SELECT DATEADD(day, @days - 366, CAST('0001-01-01' AS DATETIME2));
Run Code Online (Sandbox Code Playgroud)

如果您需要代表366之前的天数,您将需要一个替代方案.