文字列を時刻形式に変更しようとしていますが、データベース構成で問題があるようです。なぜなら、私は次のクエリをしようとしているとき、それは返信で私を返す日付形式STR_TO_DATE('18:11:52 '、'%H:%i:%s ')NULLを返します。
mysql> select STR_TO_DATE('18:11:52', '%H:%i:%s');
+-------------------------------------+
| STR_TO_DATE('18:11:52', '%H:%i:%s') |
+-------------------------------------+
| NULL |
+-------------------------------------+
mysql> show warnings;
+---------+------+---------------------------------------------------------------+
| Level | Code | Message |
+---------+------+---------------------------------------------------------------+
| Warning | 1411 | Incorrect datetime value: '18:11:52' for function str_to_date |
+---------+------+---------------------------------------------------------------+
しかし、私は別のMysqlサーバーで同じクエリを試してみるとうまくいく。設定上の問題があるはずです。 誰かが助けることができれば感謝します。前もって感謝します。
奇妙な。 MySQL 5.5では動作するが、5.7では動作しないことがわかった。 –
バグのようです。 –
参考のために、あなたはmysql 5.6の私のための文の作品です。私はあなたの設定で何か違うものがあるのだろうかと思います。 'show variables like sql_mode 'の出力を追加する機会はありますか?mysqlのドキュメントには、sql_modeをベースにした少なくとも1つのgatchaがあります。https://dev.mysql.com/doc/refman/5.7 /en/date-and-time-functions.html#function_str-to-date –