Inaktivera NO_ZERO_DATE
SQL-läge:
set @old_sql_mode = @@sql_mode;
set sql_mode = '';
Kör ditt uttalande:
UPDATE Estimates
SET CreatedDate = NULLIF(str_to_date(CreatedDate, '%c/%e/%y'), FROM_DAYS(0))
Aktivera sedan ursprungliga SQL-lägen:
set sql_mode = @old_sql_mode;
Inaktiverar NO_ZERO_DATE
läge kommer att göra STR_TO_DATE
returnera nolldatum 0000-00-00
för ogiltiga datumsträngar returneras samma värde av FROM_DAYS(0)
. Alltså NULLIF
kommer att konvertera noll datum till NULL
.
Detta svar var till hjälp.