簡體   English   中英

mySQL 將 varchar 轉換為日期

[英]mySQL convert varchar to date

我需要將 1/9/2011 的 varchar 值轉換為 mySQL 中的日期,我只需要月份和年份。 這樣我就可以使用PERIOD_DIFF function(所以我需要將以上內容轉換為 201101)。

我嘗試了各種使用STR_TO_DATE function 的方法:

SELECT STR_TO_DATE(CYOApp_oilChangedDate, '%m/%Y') FROM CYO_AppInfo

但我得到奇怪的結果......(例如:2009-01-00)

我做錯了什么?

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'); 

很難從你的例子中看出

感謝我從這里得到的及時幫助 - 對上面的一個小更新。

$query = "UPDATE `db`.`table` SET `fieldname`=  str_to_date(  fieldname, '%d/%m/%Y')";
select  substring_index(your_column_name, '/', 1) years,
           substring_index(your_column_name, '/', -1) months,
           substring_index(substring_index(your_column_name, '/', 2),'/', -1) as dates
    from your_Table_Name;

然后只需連接所有內容,您就會有一套合適的解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM