SQL上的日期系统

时间:2017-01-24 04:45:14

标签: sql ms-access-2010

我只是编写一些数据库包含数据“id and date”的查询

003 18/01/1994
004 30/10/2007
005 31/08/1991

我运行查询

select id from table where  (date >= #31/01/2017#)

结果仅显示id 005 如果我跑

select id from table where  (date <= #31/01/2017#)

结果是id 003和004,我认为正确的查询为什么id 5没有出现而是显示如果运算符&gt; =?谁能帮我?怎么了?

1 个答案:

答案 0 :(得分:1)

您真的希望日期August 31, 1991显示为以后而不是January 31, 2017吗?问题是你并没有真正用数字比较日期,而是在比较字符串。您应该以{{1​​}}的形式存储日期信息,如下所示:

yyyy-mm-dd

现在,如果您运行第一个查询:

003 1994/01/18
004 2007/10/30
005 1991/08/31

您将返回空集,如果您运行第二个查询

select id from table where date >= #2017/01/31#

你应该取回所有记录。