我想根据日期字段值更新mysql表中的数据。
表由四个字段组成(id、文件id、购买日期、错误)。购买日期和错误是varchar字段。
现在,如果date中的值不是有效日期,我想更新error字段。我试过了 STR_TO_DATE()
功能,但不起作用 where clause
在 update query
这是我的问题
UPDATE `temp_bulk_upload_data` SET `error`= 'Date of purchase: Date of purchase should be a valid date' WHERE `file_id`='190' AND STR_TO_DATE(`date_of_purchase`, '%m/%d/%Y') IS NULL AND (`date_of_purchase` != '' OR `date_of_purchase` IS NOT NULL)
在此查询中,我得到以下错误:
Error in query (1411): Incorrect datetime value: '27/8/2018' for function str_to_date
2条答案
按热度按时间j13ufse21#
传入的值
STR_TO_DATE
应该是mmddYYYY
格式化或更新的第二个参数STR_TO_DATE
要接受的函数ddmmYYYY
设置日期值格式。aiazj4mn2#
在这种情况下使用正则表达式。查询