【Hive-Sql】Hive 处理 13 位时间戳得到年月日时分秒(北京时间)

【Hive-Sql】Hive 处理 13 位时间戳得到年月日时分秒(北京时间)

1)需求

使用 Hive 自带函数 将 13位 时间戳转成年月日时分秒(北京时间),格式样例:'2023-01-13 12:23:41'

2)实现

sql 复制代码
select from_utc_timestamp(1682238448915, 'GMT+8');
-- 结果:2023-04-23 16:27:28.915000000,包含毫秒了

select from_unixtime(cast(1682238448915 / 1000 as bigint), 'yyyy-MM-dd HH:mm:ss');
-- 结果:2023-04-23 08:27:28,差了8小时

select from_unixtime(cast(substring(1682238448915, 1, 10) as bigint), 'yyyy-MM-dd HH:mm:ss');
-- 结果:2023-04-23 08:27:28,差了8小时

select date_format(from_utc_timestamp(1682238448915, 'GMT+8'), 'yyyy-MM-dd HH:mm:ss');
// 结果:2023-04-23 16:27:28,就是想要的结果

所以处理办法是:

sql 复制代码
select date_format(from_utc_timestamp(1682238448915, 'GMT+8'), 'yyyy-MM-dd HH:mm:ss');
相关推荐
孟章豪4 小时前
《SQL拼接 vs 参数化,为什么公司禁止拼接SQL?(附真实案例)》
服务器·数据库·sql
huabiangaozhi9 小时前
修改表字段属性,SQL总结
java·数据库·sql
zb2006412011 小时前
从 SQL 语句到数据库操作
数据库·sql·oracle
Meepo_haha14 小时前
配置MyBatis-Plus打印执行的 SQL 语句到控制台或日志文件中
数据库·sql·mybatis
长不大的小Tom14 小时前
计算机软件资格考试——数据库系统工程师 考点分析
服务器·sql
a8a30215 小时前
SQL中如何添加数据
数据库·sql
Francek Chen15 小时前
【大数据存储与管理】分布式数据库HBase:06 HBase编程实践
大数据·数据库·hadoop·分布式·hbase
二进制_博客16 小时前
使用Datax批量将mysql数据导入hive
数据库·hive·mysql
遇见你...16 小时前
B01 SpringMVC入门
数据库·sql