MySQL 5.7 STR_至_日期
我正在运行MySQL 5.7,希望将一些字符串转换为日期。我在这里查阅了手册: 并尝试了以下内容(请注意MySQL版本) 但是从MySQL 5.7的在线手册中,我应该看到以下内容:MySQL 5.7 STR_至_日期,mysql,mysql-5.7,Mysql,Mysql 5.7,我正在运行MySQL 5.7,希望将一些字符串转换为日期。我在这里查阅了手册: 并尝试了以下内容(请注意MySQL版本) 但是从MySQL 5.7的在线手册中,我应该看到以下内容: mysql> SELECT STR_TO_DATE('9','%m'); -> '0000-09-00' 是否有我遗漏的东西,或者这可能是一个bug?正如手册中所说 如果启用了无零日期或无零日期SQL模式,则不允许零日期或部分日期。在这种情况下,STR_TO_DATE()返回NULL并
mysql> SELECT STR_TO_DATE('9','%m');
-> '0000-09-00'
是否有我遗漏的东西,或者这可能是一个bug?正如手册中所说 如果启用了无零日期或无零日期SQL模式,则不允许零日期或部分日期。在这种情况下,STR_TO_DATE()返回NULL并生成警告
这会导致在这种情况下结果为空,因为部分“日期”包含零值。如手册所述 如果启用了无零日期或无零日期SQL模式,则不允许零日期或部分日期。在这种情况下,STR_TO_DATE()返回NULL并生成警告 这会导致在这种情况下结果为空,因为您的部分“日期”包含零值。From(强调添加):“MySQL 5.7中的默认SQL模式包括以下模式:
仅完整分组方式
,严格转换表
,无零日期
,无零除法错误
,无自动创建用户
,以及无引擎替换
。”From(重点添加):“MySQL 5.7中的默认SQL模式包括以下模式:仅按
进行完整的分组,严格的转换表
,无零日期
,按
进行除法的错误,无自动创建用户
,以及无引擎替换
。
mysql> SELECT STR_TO_DATE('9','%m');
-> '0000-09-00'