日期和时间戳转换方式

将日期转换成时间戳(例如:北京时间2021-12-02 08:00:00)

1.利用网上的时间戳在线转换工具
https://tool.lu/timestamp/

2.利用postgresql的函数转换

-- 首先要确定服务器所用的时区
show time zone;
show timezone;
-- Asia/Shanghai

-- 查看所有或指定国家的时区名称信息
select * from pg_timezone_names where abbrev in ('CST');

-- 带时区转换
select EXTRACT(epoch FROM CAST('2021-12-02 08:00:00' AS TIMESTAMPTZ))
-- 1638403200

-- 不到时区转换
select EXTRACT(epoch FROM CAST('2021-12-02 08:00:00' AS TIMESTAMP))
-- 1638432000

-- 设置时区, 会话级别
set TIME zone 'GMT';
select EXTRACT(epoch FROM CAST('2021-12-02 00:00:00' AS TIMESTAMPTZ))

3.利用linux系统的date转换

##查看linux的时区,时区在东八区
date -R 
Mon, 06 Dec 2021 14:23:25 +0800

##date -d '2021-12-02 08:00:00' +'%s'
1638403200

##服务器是系统时区是在00
date -R 
Mon, 06 Dec 2021 06:25:53 +0000

##date -d '2021-12-02 00:00:00' +'%s'
1638403200

4.利用mysql的unix_timestamp()

select unix_timestamp('2021-12-01 08:00:00')

##查看mysql的时区设置
show varibales like '%time_zone%';

##修改当前会话的时区
set time_zone = '+8:00';

##修改全局的时间
set global time_zone = '+8:00';
flush privileges;

将时间戳转换成日期

1.在线转换工具
https://tool.lu/timestamp/

2.postgresql的to_timestamp()函数

select to_timestamp(1638403200)
2021-12-02 08:00:00

3.利用linux系统的date转换

##将时间戳转换成系统时间
date -d @1638403200
Thu Dec  2 08:00:00 CST 2021

4.利用mysql的from_timestamp()函数

select from_timestamp(1638403200)
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值