select * ,str_to_date(date,'%Y-%m-%d')
from numberofmortageloans;
Screenshot of the code not working str_to_dateは、私のクエリMYSQLワークベンチでの作業ではない
私は私が私が知っているが、何かが欠けています確信している
select * ,str_to_date(date,'%Y-%m-%d')
from numberofmortageloans;
Screenshot of the code not working str_to_dateは、私のクエリMYSQLワークベンチでの作業ではない
私は私が私が知っているが、何かが欠けています確信している
あなたの日付値が2005-03-00「のように、無効です'
STR_TO_DATE()が日付を正当な日付として評価できない場合、NULLを返します。
mysql> select str_to_date('2005-03-00', '%Y-%m-%d');
+---------------------------------------+
| str_to_date('2005-03-00', '%Y-%m-%d') |
+---------------------------------------+
| NULL |
+---------------------------------------+
実際の日付で試してみると、STR_TO_DATE()はうまく動作します。
mysql> select str_to_date('2005-03-01', '%Y-%m-%d');
+---------------------------------------+
| str_to_date('2005-03-01', '%Y-%m-%d') |
+---------------------------------------+
| 2005-03-01 |
+---------------------------------------+
だから、ごみを出してください。
はマニュアル(https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_str-to-date)が一部で述べている:
NO_ZERO_DATEまたはNO_ZERO_IN_DATE SQLモードが有効になっている場合は、ゼロ日付または日付の一部が禁止されています。その場合には、STR_TO_DATE()はNULLを返し、警告を生成します。
mysql> set sql_mode='';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> select str_to_date('2005-03-00', '%Y-%m-%d');
+---------------------------------------+
| str_to_date('2005-03-00', '%Y-%m-%d') |
+---------------------------------------+
| 2005-03-00 |
+---------------------------------------+
だから、あなたはあなたのSQL_MODEを変更することができます。しかし、私は代わりにあなたのデータを修正することをお勧めします。