0
我曾在一个包的设置是得到了前一天的记录,其中包括以下列的表运行下面的查询:SQL表结果前一天不准确
url, author, dateadded
现在的设置DateAdded是日期时间格式如下2012年8月23日23:58:42.000和查询,如下所示:
SELECT [authorUrl],[author],
[dateadded]
FROM [Feeds].[dbo].[DataFeed]
where dateadded > dateadd(day,datediff(day, 0, getdate()-1), 0)
and dateadded < dateadd(day,datediff(day, 0, getDate()), 0)
现在这个查询的数量不符合下面的查询,我将不得不每天改变的计数插入日期:
SELECT [authorUrl]
,[author]
,[dateadded]
FROM [Feeds].[dbo].[DataFeed]
where dateadded > '2012-08-22 23:59:59' and dateadded < '2012-08-23 23:59:59'
有什么我在这里失踪?
也许我应该强调dateadded列是我编辑(从应用程序插入),而不是由sql本身自动插入日期。
欣赏的响应,第一个建议不为我工作,我得到例如50万条记录回来(我不明白为什么,也许我应该强调的设置dateAdded列是一个我编辑而不是由sql自动插入日期),当我使用硬编码日期查询时,我得到2000000条记录,如我所料。现在第二个建议更好,但是大约有30000短。 – vbNewbie
什么是DateAdded列的数据类型?你说“日期时间格式”,但数据类型真的是日期时间?如果这两个查询返回不同的结果,那么表或查询存在严重错误,或者存在您未告诉我们的信息。 –
dateadded列具有数据类型datetime格式。我只是觉得我发现了这个问题。当测试你的查询时,我添加了一个group by子句,当我删除结果时很好。所以谢谢一堆。 – vbNewbie