保留原来的毫秒值

select extract(epoch from \'03:21:06.678\'::time);

这个extract(epoch from )函数得到的是时间是秒单位,如果需要毫秒值就直接乘以1000:

select extract(epoch from now())*1000;

去掉原来的毫秒值

向下取整函数floor()

select floor(extract(epoch from \'03:21:06.678\'::time));

向上取整函数ceil()ceiling(),这两个一样的

select ceil(extract(epoch from \'03:21:06.678\'::time));
select ceiling(extract(epoch from \'03:21:06.678\'::time));

四舍五入函数round()

select round(extract(epoch from \'03:21:06.678\'::time));

将两个日期间的时间转换为秒值

select extract(epoch from((\'2018-12-18 00:00:10\'::timestamp - \'2018-12-18 00:00:00\')));
select extract(epoch from((\'2018-12-18 00:00:10\' - \'2018-12-18 00:00:00\'::timestamp)));
select extract(epoch from((\'2018-12-18 00:00:10\' - timestamp\'2018-12-18 00:00:00\')));
select extract(epoch from((timestamp\'2018-12-18 00:00:10\' - \'2018-12-18 00:00:00\')));

上边四种写法都可以。

epoch新纪元时间

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

参考链接

收藏 打印