我一直致力于一个项目,我必须从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#
答案 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'