使用MDB-Tools在SQL查询中使用日期

时间:2013-05-22 07:06:44

标签: sql ms-access mdbtools

我一直致力于一个项目,我必须从MS-Access数据库中获取数据。我正在使用mdb-sql工具将sql查询运行到该数据库中。但是当我尝试将where子句放在datetime列上时会出现问题。它总是抛出语法错误。

请帮助我如何在列中使用日期。 我尝试过使用这些查询 -

SELECT * FROM table1 WHERE checkintime > '04/22/13 12:15:39'

SELECT * FROM table1 WHERE checkintime > #04/22/13 12:15:39#

2 个答案:

答案 0 :(得分:1)

mdb-sql在结果中显示人类可读的日期,但在查询中需要时间戳值 - 计算为sine 1/1/1970(UNIX纪元的开头)的秒数。

因此,提取日期大于04/22/13 12:15:39的所有记录的正确查询将是:

SELECT * FROM table1 WHERE checkintime > 1366650939

从命令行计算此内容的简便方法是:

 date --date='04/22/13 12:15:39' +"%s"

答案 1 :(得分:0)

你可以使用 MS Access:格式功能(带日期):

where Format([checkintime ],"yyyy-mm-dd hh:nn:ss")>='2013-04-22 12:15:39'