在MySQL 中透過提取月份和年份將VARCHAR 轉換為日期
將表示日期的VARCHAR 值轉換為僅日期值MySQL,SQLSQL,SQLSQL您可以使用STR_TO_DATE 和DATE_FORMAT 函數。但是,如果您特別要求僅採用 YYMM 格式的月份和年份,則需要修改您的方法。
修正 STR_TO_DATE 轉換中的錯誤
您對 STR_TO_DATE 的使用嘗試轉換格式為「mm/dd/yyyy」的值。但是,您的範例輸入值(“1/9/2011”)與此格式不符。因此,您會獲得意外的輸出,例如“2009-01-00”。
解決方案:使用DATE_FORMAT 和STR_TO_DATE
以YYMM 格式取得月份和年份,您可以將DATE_FORMAT 和STR_TO_DATE 函數組合為如下:
此表達式會將輸入的VARCHAR值轉換為日期,然後將其格式化為 'yyyymm'。最終結果將是“201101”,如您所願。SELECT DATE_FORMAT(str_to_date('1/9/2011', '%d/%m/%Y'), '%Y%m');
日(dd)、月(mm) 和年(mm) 的順序( STR_TO_DATE 函數中的yyyy) 應與輸入VARCHAR 值的格式匹配。如果順序與您的情況不同,請相應地調整格式字串。
以上是如何從 MySQL 中的 VARCHAR 日期中提取 YYMM 格式的月份和年份?的詳細內容。更多資訊請關注PHP中文網其他相關文章!