加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql入门mysql中FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别

发布时间:2020-12-12 02:25:55 所属栏目:MySql教程 来源:网络整理
导读:《Mysql入门mysql中FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别》要点: 本文介绍了Mysql入门mysql中FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别,希望对您有用。如果有疑问,可以联系我们。 导读:本节内容:FROM_UNIXTIME()和UNIX_TIMESTAMP()函数Unix

《Mysql入门mysql中FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别》要点:
本文介绍了Mysql入门mysql中FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别,希望对您有用。如果有疑问,可以联系我们。

导读:本节内容:FROM_UNIXTIME()和UNIX_TIMESTAMP()函数Unix时间戳(Unix timestamp),是一种时间表示方式,定义为从格林威治时间1970年01月01日...

MYSQL必读本节内容:
FROM_UNIXTIME()和UNIX_TIMESTAMP()函数

MYSQL必读Unix时间戳(Unix timestamp),定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数.

MYSQL必读在MySQL中如何格式化时间戳?
在mysql中因为timestamp无法支持到毫秒,所以很多时候采用毫秒进行存储.

MYSQL必读那么如何将存储在数据库中Int类型的时间,如:1344954515,转换成我们正常可以肉眼能看懂的时间格式呢?

MYSQL必读一般都使用FROM_UNIXTIME函数.
FROM_UNIXTIME(unix_timestamp,format)
unix_timestamp为需要处理的时间戳(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串.
format为需要转换的格式

MYSQL必读mysql官方手册的解释:
返回'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS 格式值的unix_timestamp参数表示,具体格式取决于该函数是否用在字符串中或是数字语境中.
若format 已经给出,则结果的格式是根据format 字符串而定.
format的格式和日常的编程语言的时间格式是坚持一致的.

MYSQL必读例如:
?

mysql> select FROM_UNIXTIME(1344954515,'%Y-%m-%d %H:%i:%S');
+-----------------------------------------------+
| FROM_UNIXTIME(1344954515,'%Y-%m-%d %H:%i:%S') |
+-----------------------------------------------+
| 2012-08-14 22:28:35?????????????????????????? |
+-----------------------------------------------+
1 row in set (0.00 sec)

MYSQL必读UNIX_TIMESTAMP()是与之相对的时间函数
UNIX_TIMESTAMP(),UNIX_TIMESTAMP(date)

MYSQL必读mysql官方手册解释:
若无参数调用,则返回一个 Unix timestamp ('1970-01-01 00:00:00' GMT 之后的秒数) 作为无符号整数.若用date 来调用 UNIX_TIMESTAMP(),它会将参数值以'1970-01-01 00:00:00' GMT后的秒数的形式返回.

MYSQL必读date 可以是一个 DATE 字符串、一个 DATETIME字符串、一个 TIMESTAMP或一个本地时间的YYMMDD 或YYYMMDD格式的数字.

MYSQL必读例如:
?

mysql> select UNIX_TIMESTAMP('2012-09-04 18:17:23');
+---------------------------------------+
| UNIX_TIMESTAMP('2012-09-04 18:17:23') |
+---------------------------------------+
|??????????????????????????? 1346753843 |
+---------------------------------------+
1 row in set (0.00 sec)

MYSQL必读实际应用中,可以将格式转换为毫秒的与数据库中进行比较,也可以将数据库的Int格式转换为普通格式进行比较.
例如:查询所有创建日期大于2012-09-03 18:00:00之后的博客数据
办法一:将日期转换为int比较
?

select * from blog where createdTime > UNIX_TIMESTAMP('2012-09-03 18:00:00' );

MYSQL必读办法二:将int转换为时间格式比较
?

select * from blog where FROM_UNIXTIME(createdTime,'%Y-%m-%d %H:%i:%S') > '2012-09-03 18:00:00';

MYSQL必读下列修饰符可以被用在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)
%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),这里星期一是星期的第一天
%% 一个笔墨“%”.

编程之家PHP培训学院每天发布《Mysql入门mysql中FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读