我想轉換2017年5月1日12:15:00 PM,以便它看起來像這樣1493612100000如何使用mysql或java獲取日期時間的數字/整數格式?
然後將其轉換爲字符串。是否可以在Java和MySQL中以及如何執行?
我想轉換2017年5月1日12:15:00 PM,以便它看起來像這樣1493612100000如何使用mysql或java獲取日期時間的數字/整數格式?
然後將其轉換爲字符串。是否可以在Java和MySQL中以及如何執行?
你可以在MySQL中分兩步執行此操作。首先,使用STR_TO_DATE()將字符串時間戳轉換爲datetime
,然後將該日期從使用UNIX_TIMESTAMP()的時期轉換爲毫秒。
SELECT 1000*UNIX_TIMESTAMP(STR_TO_DATE(col, '%M %e, %Y %h:%i:%s %p')) AS millis
FROM yourTable
這將返回毫秒以來的時間,這是您的示例數據所指的。
演示在這裏:
我試過這個,它返回所有(NULL)數據 –
我解決了它從MyTable的SELECT UNIX_TIMESTAMP(Start_Date)...但不完全是我的問題所示的數值 –
你是什麼意思
1493612100000
?如果它只是可比較的整數,則您可以使用下一個解決方案 。
Mysql的具有功能UNIX_TIMESTAMP它可以像這樣使用:
SELECT UNIX_TIMESTAMP(`table`.`date`) from `table` WHERE ...;
要將字符串轉換成日期使用:
STR_TO_DATE('May 1, 2017 12:15:00 PM', '%M %d, %Y %h:%i:%s%p')
一起:
SELECT UNIX_TIMESTAMP(STR_TO_DATE(...))
*「我想轉換5月1日, 2017 12:15:00 PM所以它讀取......「* - UNIX_TIMESTAMP'是否做到這一點? – MadProgrammer
這是我的答案的副本,並且格式掩碼是錯誤的。幾秒鐘後有一個空間,並且有「AM/PM」。 –
您的評論中沒有提及您的答案副本,它在面具上有所不同。這是第一。第二:我的回答顯示了另一個功能,因爲它的名稱是它的參數。 – oklas
將'String'解析爲'Date'或'LocalDateTime'對象,從中獲取「millis」值將自己擊倒。問題是,您將失去時區上下文,但由於您的格式中沒有TZ,因此可能已成問題:P – MadProgrammer
什麼是「2017年5月1日12:15:00 PM」?這是一個'String'嗎? 'Date'? 'LocalDateTime'?它是一個數據庫列嗎?你想做什麼? – shmosel
您似乎有兩個基本問題,將日期轉換爲有效的Date或LocalDateTime對象,其中包含大量示例;從所述對象中獲得毫秒值,再次是大量的例子。如果你不打算解決這個問題,不要指望別人也這樣做。如果嘗試並卡住,我們將在這裏幫助 – MadProgrammer