【发布时间】:2014-06-02 18:08:13
【问题描述】:
使用 Visual Basic for Applications,我想从具有特定日期的访问表中选择所有元组。日期格式为“DD.MM.YYYY”,但由于 SQL,我必须将日期比较为“YYYY.MM.DD”。
因此,我编写了以下代码来执行此操作:
CurrentDb.OpenRecordset("SELECT * FROM TabAusw WHERE Datum = " & Format(Spektren("Spektren.Datum"), "YYYY-MM-DD"), dbOpenDynaset)
Spektren("Spektren.Datum") 和 "TabAusw" 中的字段 "Datum" 是我要比较的日期,两者都存储为 dbDate。
但是执行上面显示的行不会给我想要的结果。 SQL 代码似乎是正确的,但我不会得到元组,因为我比较了两个不同格式的日期。至少这是我对这里的问题的看法。
有人知道怎么解决吗?
【问题讨论】:
-
试试
"SELECT * FROM TabAusw WHERE Datum = #" & Spektren("Spektren.Datum") & "#" -
添加两个哈希值是对的,但无论如何我都需要函数格式:
"SELECT * FROM TabAusw WHERE Datum =#" & Format(Spektren("Spektren.Datum"), "YYYY-MM-DD") & "#"
标签: sql vba date comparison