1
*MySQL 将时间戳直接转换成日期时间*
FROM_UNIXTIME()是MySQL里的时间函数
select uid,userid,username,email,FROM_UNIXTIME(time,’%Y年%m月%d’) from members
以上例子是sql语句的例子,直接能将mysql的时间戳类型(time)转换成日期格式
time为需要处理的参数(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串,后面的 ‘%Y%m%d’ 主要是将返回值格式化 (这里的时间格式可以动态定义)
例如:
mysql>SELECT FROM_UNIXTIME( 1249488000, ‘%Y%m%d’ )
->20071120
mysql>SELECT FROM_UNIXTIME( 1249488000, ‘%Y年%m月%d’ )
->2007年11月20
2
*MySQL 将日期时间转换为时间戳类型*
UNIX_TIMESTAMP()是与之相对正好相反的时间函数,
UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)
若无参数调用,则返回一个 Unix timestamp (‘1970-01-01 00:00:00’ GMT 之后的秒数) 作为无符号整数。若用date 来调用 UNIX_TIMESTAMP(),它会将参数值以’1970-01-01 00:00:00’ GMT后的秒数的形式返回。date 可以是一个 DATE 字符串、一个 DATETIME字符串、一个 TIMESTAMP或一个当地时间的YYMMDD 或YYYMMDD格式的数字。
例如:
mysql> SELECT UNIX_TIMESTAMP() ; (执行使得时间:2009-08-06 10:10:40)
->1249524739
mysql> SELECT UNIX_TIMESTAMP(‘2009-08-06’) ;
->1249488000
根据format字符串格式化date值。
下列修饰符可以被用在format字符串中:
%M 月名字(January……December)
%W 星期名字(Sunday……Saturday)
%Y 年, 数字, 4 位 %y 年, 数字, 2 位
%d 月份中的天数, 数字(00……31)
%m 月, 数字(01……12)
%c 月, 数字(1……12)
%b 缩写的月份名字(Jan……Dec)
%j 一年中的天数(001……366)
%H 小时(00……23)
%h 小时(01……12)
%I 小时(01……12)
%l 小时(1……12)
%r 时间,12 小时(hh:mm:ss [AP]M)
%S 秒(00……59)
%s 秒(00……59)
%p AM或PM
%U 星期(0……52), 这里星期天是星期的第一天