C# 查询之间的mysql日期范围

C# 查询之间的mysql日期范围,c#,mysql,database,C#,Mysql,Database,我的C应用程序中的MySQL查询有一些非常奇怪的行为,它从名为project_info的表中提取行。它应该检索与客户名称相等的所有行,并且项目开始日期介于查询中的日期范围之间。我使用的当前查询有效,但日期范围的行为似乎非常奇怪 例如,如果我的表中有一行包含客户“WHSmith”的项目,当我搜索的日期范围在2018年6月18日至2018年8月1日之间时,他们有一个开始日期为“2018年7月30日”的项目,则查询不会返回任何结果,但如果我使用2018年6月18日至2018年8月2日之间的日期范围重复

我的C应用程序中的MySQL查询有一些非常奇怪的行为,它从名为project_info的表中提取行。它应该检索与客户名称相等的所有行,并且项目开始日期介于查询中的日期范围之间。我使用的当前查询有效,但日期范围的行为似乎非常奇怪

例如,如果我的表中有一行包含客户“WHSmith”的项目,当我搜索的日期范围在2018年6月18日至2018年8月1日之间时,他们有一个开始日期为“2018年7月30日”的项目,则查询不会返回任何结果,但如果我使用2018年6月18日至2018年8月2日之间的日期范围重复查询,则返回行

我目前的查询是:

SELECT * FROM project_info WHERE cust_name = "WHSmith" AND proj_date BETWEEN 2018-06-18 AND 2018-08-01;
日期存储为表中的日期字段,因此查询或值中不包含时间。。。客户名称和日期保存在我的应用程序中的变量中,但我已经检查了它们是否正确,并且看起来还可以。
有人知道为什么中间查询的行为如此奇怪吗?或者建议一种更好的方法来查找日期范围内的行。。。非常感谢。

显示您的代码。您显示的查询在日期周围没有引号。能否尝试对日期使用引号?从项目信息中选择*,其中客户名称=WHSmith和项目日期介于“2018-06-18”和“2018-08-01”之间;查看您正在查询的表的代码和模式将非常有帮助。如果您使用Oracle连接器/NET构建这个查询,您可能会遇到这个bug或它的变体:在这种情况下,您可能希望考虑切换到另一个ADO.NET库:谢谢您的评论…我发现我的查询构造函数的日期格式有点不正确。。。仍然不确定它在更大的日期范围内是如何工作的,但在将格式设置在变量中之后,它的行为符合预期。很抱歉缺少代码,但我正在从我的应用程序中提取变量,这对于您在这里查看毫无意义。。。。非常感谢。