【问题标题】:Function to convert epoch to timestamp in Amazon Redshift在 Amazon Redshift 中将纪元转换为时间戳的函数
【发布时间】:2021-01-07 13:07:07
【问题描述】:

我正在研究 Amazon Redshift 数据库,并且我的日期从纪元开始以毫秒为单位。我想将其转换为时间戳,并编写我在另一个线程上找到的查询

SELECT TIMESTAMP 'epoch' + column_with_time_in_ms/1000 *INTERVAL '1 second'
FROM table_name LIMIT 1000;

在 YYYY-MM-DD HH:MM:SS 中给我结果。

我的问题是: 如何在 Redshift 中编写一个以毫秒为单位的整数参数并进行此转换的 SQL 函数?

谢谢。

【问题讨论】:

    标签: sql datetime timestamp amazon-redshift sql-function


    【解决方案1】:

    您似乎想要一个包含转换代码的标量 UDF。

    在 Redshift 中,您可以这样写:

    create function ms_epoch_to_ts(int)
        returns timestamp
        immutable
    as $$
        select timestamp 'epoch' + $1 / 1000 * interval '1 second'
    $$ language sql; 
    

    【讨论】:

      猜你喜欢
      • 2016-07-23
      • 2017-07-02
      • 1970-01-01
      • 1970-01-01
      • 2020-06-24
      • 1970-01-01
      • 1970-01-01
      • 2017-10-06
      • 2010-09-12
      相关资源
      最近更新 更多