mysql时间戳转int_MySQL时间戳相互转换
mysql将时间戳转成常⽤时间格式
在mysql中,⼀个时间字段的存储类型是int(11),怎么转化成字符类型,⽐⽅存储为132********,需要转化为yyyy -mm-dd的形式。
使⽤ FROM_UNIXTIME函数,具体如下:
FROM_UNIXTIME(unix_timestamp,format)
返回表⽰ Unix 时间标记的⼀个字符串,根据format字符串格式化。format可以包含与DATE_FORMAT()函数列出的条⽬同样的修饰符。
根据format字符串格式化date值。下列修饰符可以被⽤在format字符串中: %M ⽉名字(January……December)
%W 星期名字(Sunday……Saturday)
%D 有英语前缀的⽉份的⽇期(1st, 2nd, 3rd, 等等。)
%Y 年, 数字, 4 位
%y 年, 数字, 2 位
unix时间戳转换日期格式%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), 这⾥星期⼀是星期的第⼀天
%% ⼀个⽂字“%”。
例如:
SELECT FROM_UNIXTIME(1422720000, '%Y-%m-%d %T')
输出为:
2015-02-01 00:00:00
如何将⼀个⽇期类型转换成时间戳呢?其实很简单,只需要⽤ ⽇期转换为UNIX时间戳⽤函数:UNIX_TIMESTAMP()。
使⽤ UNIX_TIMESTAMP函数,具体如下:
SELECT UNIX_TIMESTAMP('2006-11-04 12:23:00');
例如:
SELECT UNIX_TIMESTAMP('2006-11-04 12:23:00');
输出为:
1162614180
另外
NOW() //当前时间
SYSDATE()//当前时间CURRENT_TIMESTAMP以'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS格式返回当前的⽇期和时间,取决于函数是在⼀个字符串还是在数字的上下⽂被使⽤。
mysql> selectNOW();-> '1997-12-15 23:50:26'mysql> select NOW() + 0;-> 19971215235026
SEC_TO_TIME(seconds)
返回seconds参数,变换成⼩时、分钟和秒,值以'HH:MM:SS'或HHMMSS格式化,取决于函数是在⼀个字符串还是在数字上下⽂中被使⽤。
mysql> select SEC_TO_TIME(2378);-> '00:39:38'mysql> select SEC_TO_TIME(2378) + 0;-> 3938
TIME_TO_SEC(time)
返回time参数,转换成秒。
mysql> select TIME_TO_SEC('22:23:00');-> 80580mysql> select TIME_TO_SEC('00:39:38');-> 2378
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论