0

我在数据库中存储为 BIGINT 的日期/时间字段。我需要检索数据库中日期早于当前日期 30 天的记录。我尝试了以下方法,它可以工作。

有没有更好/更简单的方法来完成它?

select 
    datediff(day, CONVERT(DATE, DATEADD(s, dateInBigint / 1000, '19700101'), 102),
                  CONVERT(date, getdate(),102));

例如:

select 
   datediff(day, CONVERT(DATE, DATEADD(s, 1348986702000 / 1000, '19700101'), 102),
                 CONVERT(date, getdate(), 102));
4

1 回答 1

0

你可以试试:

   select  
        datediff(day, CONVERT(DATE, DATEADD(ms, dateInBigint, '19700101'), 102), 
                      CONVERT(date, getdate(),102)); 

可能会快一点。

于 2012-10-03T14:50:04.647 回答