本文小编为大家详细介绍“Postgresql之时间戳long,TimeStamp,Date,String互转方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Postgresql之时间戳long,TimeStamp,Date,String互转方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
时间戳long,TimeStamp,Date,String互转
今天遇到一个神奇的问题:
Postgre数据库里存的 10位long类型的时间戳,拿Java代码转完的日期年月日时分秒,转出来的时间和在pgAdmin里用sql转完的日期 整整差了8个小时。。。。。
你不信吗? 请看图
时间戳:1598619305 转时间:年月日时分秒
select 1598619305,to_timestamp(1598619305),to_char(to_timestamp(1598619305),‘YYYY-MM-DD HH24:MI:SS');
PgAdmin窗口:
Java窗口:
1.时间戳Long转Timestamp
select TO_TIMESTAMP(1512490630) as time from tablename;
2.TimeStamp转时间戳Long
转出来可能差8小时,需要减去8小时
转10位
SELECT EXTRACT(epoch FROM NOW())-83600;SELECT EXTRACT(epoch FROM CAST(‘2017-12-06 00:17:10' AS TIMESTAMP))-83600;
转13位 转13位向下取整
SELECT EXTRACT(epoch FROM NOW())1000–836001000,floor(EXTRACT(epoch FROM NOW())1000-836001000);
4.String转Date 只能得到年月日
select to_date(‘2020-08-28 12:55:05')
5.TimeStamp 10位,13位 转String
select to_char(to_timestamp(1512490630), ‘YYYY-MM-DD HH24:MI:SS');SELECT to_char(to_timestamp(t.create_time / 1000), ‘YYYY-MM-DD HH24:MI:SS');
10位转String
SELECT to_char(to_timestamp(t.create_time / 1000), ‘YYYY-MM-DD HH24:MI:SS')
读到这里,这篇“Postgresql之时间戳long,TimeStamp,Date,String互转方法是什么”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网行业资讯频道。