2

我从 SQL Server 2008 中的表中提取发票日期。日期以 Julian 为单位。我已经使用以下方法转换了它们:

CONVERT(char(12), dateadd(dd, (t2.date_paid - 639906), '1/1/1753'), 101)

伟大的。现在,当我尝试使用 WHERE 子句限制结果时

AND CONVERT(char(12), dateadd(dd, (t2.date_paid - 639906), '1/1/1753'), 101) 
  BETWEEN '07/01/2012' AND '07/31/2012'

我收到超出该范围的日期。该t2.date_paid列将返回 2004 年的日期。想法?

4

1 回答 1

0

您正在将创建的日期转换dateadd为字符串,因此您正在进行字符串比较而不是日期比较。

于 2012-09-14T19:56:06.130 回答