首页 > 解决方案 > SQL Server 上的 ASP 经典选择日期 BETWEEN 日期

问题描述

我在我的经典 asp 代码中运行下一个查询,它运行完美。它返回 "from" 和 "to" 天之间的结果

query = 'SELECT DateAndTime, X, Y, Z FROM '+ Request.QueryString("table") + ' where DateAndTime between '+"'"+Request("from")+"'" +' and ' +"'"+Request("to")+"'order by DateAndTime";

但是,我无法找出下一个查询出了什么问题:我希望它返回数据库中记录的上周的结果。

query = 'SELECT DateAndTime, X, Y, Z FROM '+ Request.QueryString("table") + ' where DateAndTime between DATEADD("d",-7,(select MAX(DateAndTime) from '+ Request.QueryString("table") + ')) and (select MAX(DateAndTime) from '+ Request.QueryString("table") + ') order by DateAndTime";

有任何想法吗?
当我在 Microsoft SQL Server Management Studio 上运行该查询时,该查询正常。也许问题出在语法上?

标签: sqldatebetween

解决方案


您在按 DateAndTime 订购之前缺少引号

query = 'SELECT DateAndTime, X, Y, Z FROM '+ Request.QueryString("table") + ' where DateAndTime between DATEADD("d",-7,(select MAX(DateAndTime) from '+ Request.QueryString("table") + ')) and (select MAX(DateAndTime) from '+ Request.QueryString("table") + ') "order by DateAndTime";

推荐阅读