2017-03-29 38 views
1

從Excel中導入數據並將日期轉換爲VARCHAR格式爲2017/3/24,因爲日期未保存。所以我使用VARCHAR來方便。現在我付出了代價。更新轉換後存儲爲VARCHAR的表中的DATE

我想使用STR_TO_DATE函數進行轉換,以便我可以更新行中的新列(定義爲DATE)。

當我用下面這看起來很有希望,但只有月/日轉換得當,如下圖所示年成爲2020:

DATE_ORDER $ conv_date_order

2017年3月24日2020-03- 24

SELECT date_order, STR_TO_DATE(date_order, '%m/%d/%y')  AS $conv_date_order, 
      date_shipped, STR_TO_DATE(date_shipped, '%m/%d/%y') AS $conv_date_shipped, 
      date_need, STR_TO_DATE(date_need, '%m/%d/%y')  AS $conv_date_need 
    FROM Orders 
    WHERE Orders.id = $id; 

回答

1

您需要在您的'%m/%d/%Y'格式字符串中使用大寫字母Y來表示四位數年份。小寫字母y表示兩位數的年份。

+0

謝謝喬。那很簡單! – Bricked

相關問題