在日期之间查询

时间:2016-05-21 18:13:50

标签: c# sql ms-access

我试过这个问题:

SELECT * FROM Orders WHERE OrderDate Between '2016/05/21' AND '2016/05/20'

但它不起作用......

错误:

  

其他信息:标准表达式中的数据类型不匹配。

它应该在Access表上运行 我从c#中激活了它。

计算机可能认为它是一个字符串,而不是日期...... 如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

检查您的PC /服务器日期格式并在查询中转换日期LIKE

SELECT * FROM在CONVERT(VARCHAR(10),'2016/05/21',103)和CONVERT(VARCHAR(10),'2016/05/22',103)之间的订单WHERE OrderDate

在这里你可以找到格式 http://www.sql-server-helper.com/sql-server-2008/sql-server-2008-date-format.aspx

答案 1 :(得分:0)

Access数据库引擎将'2016/05/21'解释为字符串值。如果您希望将其解释为日期/时间值,请使用#而不是引号。

SELECT * FROM Orders WHERE OrderDate Between #2016/05/20# AND #2016/05/21#