我正在使用 MySql,我在尝试检查 DateTime 字段是否等于指定值时发现一些困难。
在我的数据库中,我有一个 MeteoForecast 表,其中包含一个名为 start_date 的 DateTime 字段,其值如下:05/03/2018 12:00:00
好的,然后我实现这个查询,检查表中是否存在开始日期值晚于指定值表示的日期的记录,这是我的查询:
SELECT *
FROM MeteoForecast AS MF
WHERE
MF.localization_id = 1
AND
MF.start_date >= '05/03/2018 12:00:00'
除了结果排除了 start_date 字段等于我的 WHERE 子句中指定的值的记录之外,它似乎有效。
好的,但我需要检索具有 start_date 字段的记录,该字段恰好包含我的 WHERE 子句中指定的值,所以我尝试这样做:
SELECT *
FROM MeteoForecast AS MF
WHERE
MF.localization_id = 1
AND
MF.start_date = '05/03/2018 12:00:00'
它返回一个空的结果集。
为什么?怎么了?我错过了什么?我该如何修复这个查询?
最佳答案
使用标准日期格式。假设您想要 2018 年 3 月 5 日:
WHERE MF.localization_id = 1 AND
MF.start_date = '2018-03-05 12:00:00'
关于mysql - 为什么这个检索 DateTime 字段等于指定值的记录的查询不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49509346/