【发布时间】:2017-02-14 21:36:23
【问题描述】:
我正在使用 str_to_date() 作为插入命令的一部分,该字段包含格式正确的日期或空白字符串。
对于具有空字符串 str_to_date 的行,按预期返回“0000-00-00 00:00:00”的零日期。
我可以使用 IGNORE 关键字作为 INSERT 语句的一部分来防止错误,但是在表中包含零日期会导致以后尝试将该字段与其他值进行比较时出现问题。我的目标是插入空白字符串或空值。谁能指出我正确的方向?
【问题讨论】:
-
你的数据库中的列是什么类型的?如果是
DATETIME,则不能存储空白字符串。 (另外,您是否允许在该字段中使用NULL值?)您在比较时遇到了哪些“问题”?你可能在那里做错了什么。 -
你可以做类似
NULLIF(str_to_date(''), '0000-00-00 00:00:00')的事情。
标签: mysql