MySql时间戳格式化函数FROM_UNIXTIME使用说明
对于数据库中的时间戳数据,我们有什么方法可以把它处理成我们需要的格式呢,这里会用到一个系统函数:FROM_UNIXTIME,语法如下:
FROM_UNIXTIME(unix_timestamp, format)
返回:Unix时间标记的一个字符串,根据format格式化,如果format为空默认会使用%Y-%m-%d %H:%i:%s的格式
可以看到,
select from_unixtime(1676429376); select from_unixtime(1676429376,'%Y-%m-%d %H:%i:%s');
这2个语句,执行的结果是一样的。
重点就是【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), 这里星期一是星期的第一天 %% 一个文字%
例如:
select from_unixtime(1676429376,'%Y-%M-%D %H:%i:%s');