注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

PostgreSQL 中文网

 
 
 

日志

 
 

PostgreSQL: epoch 新纪元时间的使用  

2012-05-30 15:44:49|  分类: Postgres基础 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 

      新纪元时间 Epoch 是以 1970-01-01 00:00:00 UTC 为标准的时间,将目标时间与 1970-01-01 00:00:00
时间的差值以秒来计算 ,单位是秒,可以是负值; 有些应用会将时间存储成epoch 时间形式,以提高读取效率,
下面演示下 pg 中 epoch 时间的使用换算方法。


--1 将 time stamp 时间转换成 epoch 时间
francs=> select extract(epoch from timestamp without time zone '1970-01-01 01:00:00');
 date_part
-----------
      3600
(1 row)

francs=> select extract(epoch from timestamp without time zone '1970-01-01 02:00:00');
 date_part
-----------
      7200
(1 row)

francs=> select extract(epoch from interval '+1 hours');
 date_part
-----------
      3600
(1 row)


francs=> select extract(epoch from interval '-1 hours');
 date_part
-----------
     -3600
(1 row)

 

--2 将epoch 时间转换成  time stamp  时间
francs=> select timestamp without time zone 'epoch' + 3600 * interval '1 second';
      ?column?      
---------------------
 1970-01-01 01:00:00
(1 row)

francs=> select timestamp without time zone 'epoch' + 7200 * interval '1 second';
      ?column?      
---------------------
 1970-01-01 02:00:00
(1 row)


--3 手册上关于 epoch 的解释
      For date and timestamp values, the number of seconds since 1970-01-01 00:00:00 UTC (can be negative);
for interval values, the total number of seconds in the interval

  评论这张
 
阅读(27007)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016