我需要将varchar值1/9/2011转换为mySQL中的日期,我只需要月份和年份。这样我就可以使用PERIOD_DIFF
函数了(所以我需要将上面的内容转换为201101)。
我尝试过使用STR_TO_DATE
函数的各种方法:
SELECT STR_TO_DATE(CYOApp_oilChangedDate, '%m/%Y') FROM CYO_AppInfo
但是我得到了奇怪的结果......(例如:2009-01-00)
我做错了什么?
答案 0 :(得分:66)
select date_format(str_to_date('31/12/2010', '%d/%m/%Y'), '%Y%m');
或
select date_format(str_to_date('12/31/2011', '%m/%d/%Y'), '%Y%m');
很难从你的例子中看出来
答案 1 :(得分:2)
感谢我从这里得到的及时帮助 - 对上面的一个小小的更新。
$query = "UPDATE `db`.`table` SET `fieldname`= str_to_date( fieldname, '%d/%m/%Y')";