2017-01-23 115 views
0

在我的數據庫表中有一個字段upload_datetime是那裏,它有一個值,如星期一,2017年1月2日15 :46:23 GMT。我想獲得像2017-01-02 15:46:23這樣的格式化日期。請有人幫助我在選擇查詢中獲取它。如何轉換日期(星期一,2017年1月2日15:46:23 GMT)日期格式化數據在mysql

我試過STR_TO_DATE,CAST但我沒有得到任何輸出。它返回NULL

+0

檢查這個答案http://stackoverflow.com/questions/25286335/mysql-string-to-date-with-given -format-containing-a-timezone-specifier –

+0

「upload_datetime」列的類型是什麼? –

回答

0

我得到了答案。做了一些R後& D我找到了方法。感謝所有您的評論。 (datetime_uploaded,9,2),「 - 」,substr(datetime_uploaded,13,4)),'%d(substr - %M-%Y '),' %Y-%M')
FROM OpsMetrics

0

您可以使用

DATE_FORMAT(NOW(),'%d %b %Y %T:%f') 

的NOW()返回當前日期時間,你可以用你想

+0

我想將格式化數據轉換爲日期 – MANOJ

+0

如何獲取數據?通過php變量?在數據庫表的upload_datetime列中設置TYPE到DATETIME – liontass

0

在我的數據庫表中的一個字段upload_datetime其他日期時間取代它的存在和它具有類似Mon,2017年1月2日15:46:23 GMT的價值。

本聲明可能有點誤導,因爲我們不需要特別關心內部如何存儲datetime。你確切的問題是如何以一定的方式格式datetime

DATE_FORMAT()函數是去這裏的一種方法。它接受時間列和格式掩碼作爲輸入,並返回格式化的字符串。

SELECT DATE_FORMAT(upload_datetime, '%Y-%m-%d %H:%i:%s') AS upload_formatted 
FROM yourTable 
+0

我已經運行了這個查詢** select DATE_FORMAT('Mon,02 Jan 2017 15:46:23 GMT','%Y-%m-% d%H:%i:%s')來自Dual ** –

+0

@krishnpatel我們對該列的類型沒有任何認識,除了它的名稱帶有術語'datetime'。如果他將自己的日期存儲爲文本,這完全是另一個問題,他不應該轉換爲另一種文本格式,而應該是迄今爲止。 –

+0

@krishnpatel在查詢中,你不需要'Dual',這是MySQL而不是Oracle。 –

相關問題