当前位置: 首页 > 知识库问答 >
问题:

比较MySQL中的日期忽略DateTime字段的时间部分

殷德本
2023-03-14

我需要比较MySQL中的日期,忽略DateTime列中的时间部分。我尝试了以下SQL。

SELECT * FROM order_table where order_date=date_format('2012-05-03', '%Y-%m-%d');

即使MySQL表中有日期2012-05-03 10:16:46,它也不会检索任何行。在MySQL中比较日期时,如何忽略DateTime字段中的时间部分?

共有3个答案

太叔栋
2023-03-14
SELECT * FROM order_table WHERE date(order_date) = '2012-05-03';
王伯寅
2023-03-14

如果你想传入一个日期,那么你可以这样做:

where YEAR(order_date)='2012' AND MONTH(order_date)='05' AND DAY(order_date)='03'

您可以查看此以获取更多功能

邢嘉祯
2023-03-14

您可以使用 DATE 函数

SELECT col1, col2, ..., coln
FROM order_table
WHERE date(order_date) = '2012-05-03'

但如果您的表很大并且您在订单日期上有索引,这会更有效率:

SELECT col1, col2, ..., coln
FROM order_table
WHERE order_date >= '2012-05-03'
AND order_date < '2012-05-04'
 类似资料:
  • 问题内容: 我想比较两个日期和时间,我想要所有结果 但这只是比较日期而不是时间。它给了我今天日期的所有结果集 提前致谢! 问题答案: 您要显示的查询示例: 04:00:00是4AM,所以您显示的所有结果都 在 那 之后 ,这是正确的。 如果要在下午4点之后显示所有内容,则需要在查询中使用正确的(24hr)表示法。 为了使事情更清晰,请尝试以下操作: 这将向您显示日期及其12小时时间。

  • 问题内容: 我想通过表达式从表中获取所有行: 但是,如果该列包含日期时间,可以这样说: 但是如果我这样做: 它不会排。 我猜这是因为$ date = 2014-07-10,这使MySQL假设它是2014-07-10 00:00:00。 在普通的MySQL中,我会做 使用Laravel的口才相当于什么? 问题答案: Laravel 4+为您提供这些方法:,,(#3946)和(#6879)。 他们为您

  • 问题内容: 我有一个列(格式),指定票的到期日,现在我需要得到“由于今天的门票基地之间的比较有。即vs 在这件事上将返回true。 问题答案: 使用比较日期 将为您提供当前日期的日期部分,并为您提供到期日的日期部分。然后您可以轻松比较日期 所以你可以像这样比较 要么 看这里

  • 问题内容: 以下代码有什么问题? 也许只比较日期而不是时间会更简单。我也不确定如何执行此操作,因此我进行了搜索,但找不到确切的问题。 顺便说一句,当我在警报中显示两个日期时,它们显示为完全相同。 我的代码: 有没有比较日期而不包含时间的简单方法? 问题答案: 我仍在学习JavaScript,而我发现唯一可以比较两个没有时间 的日期的方法是使用Date对象的方法,并将小时,分钟,秒和毫秒设置为零。然

  • 问题内容: 我想比较数据库中2个给定日期之间的日期。数据库中的列是DATETIME,我只想将其与日期格式进行比较,而不要与datetime格式进行比较。 执行上面的SQL时出现此错误: 您的SQL语法有误;检查与您的MySQL服务器版本相对应的手册,以在’us_reg_date,120)> =‘2000-07-05’AND CONVERT(CHAR(10),us_reg_date,120)<=‘2