0

我环顾了谷歌,找不到任何工作代码。我想查询我的数据库以仅返回某个日期的结果。但是我数据库中的 datetime 列同时具有日期和时间。

我将如何去做这件事。

今天 = 15/08/2013

数据库值之一的示例 = 15/08/2013 02:13:18 PM

这是我现在的代码

'Connect to database
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.ACE.OLEDB.12.0"
conn.Open Server.MapPath("/nightclub_photography/data/database/jamsnaps.mdb")

'Get the current date
today = Request.Cookies("sdate")
response.write today

sql = "SELECT * FROM sales WHERE saleDate =" & today

Set rs = conn.Execute(sql)

if rs.EOF then
    response.write "Error!"
end if
4

3 回答 3

1

日期作为字符串传递。将它们用单引号括起来。

sql = "SELECT * FROM sales WHERE saleDate = '" & today & "'"
于 2013-08-15T13:40:06.357 回答
0

嗯,我在其他一些似乎有效的代码中使用了它。

DATEVALUE(列名)

于 2013-08-15T14:06:34.930 回答
0

如果您知道它today仅包含日期,则可以连接时间并执行以下操作:

sql = "SELECT * FROM sales WHERE saleDate >= '" & today & " 00:00:00' AND today <= '" & today  & " 23:59:59'"

如果你想确定的话,你可以使用 VBScript 的日期函数之一来保证它的内容today只是日期。就像是:

today = FormatDateTime(today,vbShortDate)
于 2013-08-20T15:57:36.687 回答