如何将Bigint转换成日期和时间格式,我有两列,一列是"状态更改日期",另一列是"状态更改时间".我必须组合两列,并以时间戳格式显示.请在这里提出解决方案.先谢谢你.

我试着使用Unixtime,但不起作用.

Column details

Data type

推荐答案

我试着使用Unixtime,但不起作用.

因为您的数据看起来不像unix time,它看起来像是出于某种原因格式化的日期时间存储在Bigint中.你可以把它相应地变成varcharparse:

-- sample data
WITH dataset(state_change_date, state_change_time) as (
    VALUES (20220801, 355),
       (20220801, 2355)
)

-- query
SELECT date_parse(cast(state_change_date as varchar) || lpad(cast(state_change_time as varchar), 4 , '0'), '%Y%m%d%k%i')
FROM dataset

输出:

_col0
2022-08-01 03:55:00.000
2022-08-01 23:55:00.000

Sql相关问答推荐

SQL:创建查询以添加减少的总数

将主表与历史表连接以获取主表的当前汇率以及历史表中的上一个和最后一个汇率

计算分段的总权重

MariaDB查询在逗号分隔的字符串中查找多个值

编写一个SQL查询来返回收视率较高的类型,并取这些收视率的平均值,我该如何做呢?

正在编写查询.我需要将订阅的时间段分为第一个订阅中包含的另一个订阅之前和之后的时间段

动态组/转置

Postgres SQL查询从字符串中获取邮箱地址

排除具有部分匹配条件的记录

无法访问级联删除导致的触发器中已删除的外键记录

Snowflake 中的分层数据

Postgresql 生成器列导致语法错误

BigQuery导航函数计算ID

SQL:无重复项的两个聚合函数

比使用NOT EXISTS更高效的SQL删除方法是什么?

SQL 按 id 运行总计并受条件限制(在窗口上)

for each 客户查找每个类别的最新评分

Set vs let vs 在snowflake中声明变量

如何将多行的查询结果合并为一行

如何比较同一张表中的行并进行相应更新