0

我的 MS Access 数据库中有一个DTB_VER.VER_DATUM包含所有完整日期的日期字段(例如 03-04-2012)。

当我使用字符串格式(vb.net)创建以下查询时:

Dim sql as string =  string.format("SELECT * FROM DTB_VER WHERE VER_DATUM LIKE '{0}%-{1}%-{2}%'", day, month, year)

使用此查询,我可以完美地搜索一天或一年或两者的组合,但是一旦我输入一个月,它就会失败,我不知道为什么。

有任何想法吗?

更新:

我尝试了以下方法:

SELECT * FROM DTB_VER where Day(Ver_datum) like '*day*' and Month(Ver_datum) like '*month*' and year(Ver_datum) like '*year*'

我可以再次搜索一天或一年或两者的组合(并将月份留空),但我无法搜索一个月。

4

1 回答 1

0

例如,您可以使用访问日期格式

sql="SELECT * FROM DTB_VER WHERE VER_DATUM=#" & year & "/" & month & "-/" & day & "#"

您不能将 LIKE 与日期一起使用。如果您想选择一个月中的所有日子,您需要以下内容:-

sql="SELECT * FROM DTB_VER WHERE VER_DATUM>=#" & year & "-" & month & "-01# and VER_DATUM<#" & format(dateadd("m",1,cdate(year & "/" month & "/" & day),"yyyy/mm") & "/01"
于 2012-08-03T13:10:42.083 回答