将存储为 INT 的时间转换为 Presto 中的 VARCHAR
Converting time stored as INT to VARCHAR in Presto
我正在将数据从 Presto 数据库提取到 SQL 服务器 table,其中包含一个名为 scan_time
的字段,该字段以 INT 格式存储时间值。这些值显然不是固定长度,所以像 1233
这样的东西实际上意味着 00:12:33
.
将其转换为 VARCHAR 的最佳方法是什么,以便值 1223
输出为 00:12:33
?
在SQL服务器中,您可以使用以下方式转换为时间:
select convert(time, stuff(right(concat('0', scan_time), 4), 3, 0, ':'))
Here 是一个 db<>fiddle.
我正在将数据从 Presto 数据库提取到 SQL 服务器 table,其中包含一个名为 scan_time
的字段,该字段以 INT 格式存储时间值。这些值显然不是固定长度,所以像 1233
这样的东西实际上意味着 00:12:33
.
将其转换为 VARCHAR 的最佳方法是什么,以便值 1223
输出为 00:12:33
?
在SQL服务器中,您可以使用以下方式转换为时间:
select convert(time, stuff(right(concat('0', scan_time), 4), 3, 0, ':'))
Here 是一个 db<>fiddle.