一:將毫秒值轉化為指定日期格式
使用MYSQL自帶的函數FROM_UNIXTIME(unix_timestamp,format)。
舉例:
select FROM_UNIXTIME(1364176514656/1000,'%Y-%m-%d %h:%i:%s')as date ;
結果為:
2013-03-25 09:55:15
其中unix_timestamp為字段值/1000.
format可以使用的值為:
%M 月名字(January……December)
%W 星期名字(Sunday……Saturday)
%D 有英語前綴的月份的日期(1st, 2nd, 3rd, 等等。)
%Y 年, 數字, 4 位
%y 年, 數字, 2 位
%a 縮寫的星期名字(Sun……Sat)
%d 月份中的天數, 數字(00……31)
%e 月份中的天數, 數字(0……31)
%m 月, 數字(01……12)
%c 月, 數字(1……12)
%b 縮寫的月份名字(Jan……Dec)
%j 一年中的天數(001……366)
%H 小時(00……23)
%k 小時(0……23)
%h 小時(01……12)
%I 小時(01……12)
%l 小時(1……12)
%i 分鍾, 數字(00……59)
%r 時間,12 小時(hh:mm:ss [AP]M)
%T 時間,24 小時(hh:mm:ss)
%S 秒(00……59) %s 秒(00……59)
%p AM或PM
%w 一個星期中的天數(0=Sunday ……6=Saturday )
%U 星期(0……52), 這里星期天是星期的第一天
%u 星期(0……52), 這里星期一是星期的第一天
%% 一個文字“%”。
二、日期格式轉換為毫秒值
同理,有時我們也想把datetime類型的數據轉換為int類型保存到數據庫。那么這時候就需要用到函數
select UNIX_TIMESTAMP('2011-05-31 23:59:59'); //這個只是秒值,若需要毫秒值則再乘以1000
結果
1306771200
注意 UNIX_TIMESTAMP該函數只返回1970。。。。到現在的秒數。如果算上一個函數一樣是毫秒數,則還需要乘以1000
