广告位联系
返回顶部
分享到

Postgresql之时间戳long,TimeStamp,Date,String互转方式

PostgreSQL 来源:互联网 作者:佚名 发布时间:2024-02-11 08:47:29 人浏览
摘要

时间戳long,TimeStamp,Date,String互转 今天遇到一个神奇的问题: Postgre数据库里存的 10位long类型的时间戳,拿Java代码转完的日期年月日时分秒,转出来的时间和在pgAdmin里用sql转完的日期 整

时间戳long,TimeStamp,Date,String互转

今天遇到一个神奇的问题:

Postgre数据库里存的 10位long类型的时间戳,拿Java代码转完的日期年月日时分秒,转出来的时间和在pgAdmin里用sql转完的日期 整整差了8个小时。。。。。

你不信吗? 请看图

时间戳:1598619305 转时间:年月日时分秒

1

select 1598619305,to_timestamp(1598619305),to_char(to_timestamp(1598619305),‘YYYY-MM-DD HH24:MI:SS');

PgAdmin窗口:

Java窗口:

1.时间戳Long转Timestamp

1

select TO_TIMESTAMP(1512490630) as time from tablename;

2.TimeStamp转时间戳Long

转出来可能差8小时,需要减去8小时

转10位

1

2

SELECT EXTRACT(epoch FROM NOW())-83600;

SELECT EXTRACT(epoch FROM CAST(‘2017-12-06 00:17:10' AS TIMESTAMP))-83600;

转13位 转13位向下取整

1

SELECT EXTRACT(epoch FROM NOW())1000–836001000,floor(EXTRACT(epoch FROM NOW())1000-836001000);

4.String转Date 只能得到年月日

得不到时分秒,怪哉,在这篇文章里找到了答案,设计如此…

1

select to_date(‘2020-08-28 12:55:05')

5.TimeStamp 10位,13位 转String

1

2

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

1

SELECT to_char(to_timestamp(t.create_time / 1000), ‘YYYY-MM-DD HH24:MI:SS')


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 :
相关文章
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计