Sql 红移:将2个Epoch Unix列转换为1(带时区的可读格式)

Sql 红移:将2个Epoch Unix列转换为1(带时区的可读格式),sql,json,timestamp,amazon-redshift,epoch,Sql,Json,Timestamp,Amazon Redshift,Epoch,背景:下面的JSON文件是事务的事件类型(来自DocumentDB),我将每天将其加载到Redshift中。红移中的原始表将包含您在使用Pentaho Kettle读取和解析后在下面的JSON中看到的确切信息 在红移中捕获此JSON文件的当前DDL如下所示: CREATE TABLE etl.lpgetlstage_na.json_data_raw ( document_id varchar(500), clustertime timestamp, operation_t

背景:下面的JSON文件是事务的事件类型(来自DocumentDB),我将每天将其加载到Redshift中。红移中的原始表将包含您在使用Pentaho Kettle读取和解析后在下面的JSON中看到的确切信息

在红移中捕获此JSON文件的当前DDL如下所示:

CREATE TABLE etl.lpgetlstage_na.json_data_raw (
    document_id varchar(500),
    clustertime timestamp,
    operation_type varchar(500),
    "database" varchar(500),
    collection varchar(500),
    document_key varchar(500),
    order_number varchar(600),
    order_id varchar(500),
    order_date_time varchar(500),
    attraction_id varchar(500),
    entry_date timestamp,
    entry_time timestamp,
    request_id varchar(500),
    ticket_url varchar(500),
    pass_id varchar(500),
    external_ticket_id varchar(500),
    "class" varchar(500),
    filename varchar(500),
    last_modified varchar(500),
    etl_created_ts varchar(500)
);
问题:正如我们在下面的JSON结构中看到的,两个字段“entry\u date”和“entry\u time”目前都是Unix Epoch格式的。我在这里的主要目标是从“entry_date”和“entry_time”中提取日期和时间,这样我就可以将两者连接起来,并创建一个具有以下格式(包括时区)的唯一列:“GMT:2020年9月7日星期一下午4:11:04”

有什么方法可以用红移来实现这一点吗

  {
      "_id": {
        "_data": "11111111111111"
      },
      "operationType": "insert",
      "clusterTime": {
        "$timestamp": {
          "t": 1599495064,
          "i": 1
        }
      },
      "ns": {
        "db": "abc",
        "coll": "abc"
      },
      "documentKey": {
        "_id": {
          "$uuid": "abcabcabcabcabcabc"
        }
      },
      "fullDocument": {
        "_id": {
          "$uuid": "abcabcabcabcabcabc"
        },
        "orderNumber": "1234567",
        "externalOrderId": "12345678",
        "orderDateTime": "2020-09-11T08:06:26Z[UTC]",
        "attraction": "abc",
        "entryDate": {
          "$date": 1599523200000
        },
        "entryTime": {
          "$date": 1599472800000
        },
        "requestId": "abc",
        "ticketUrl": "abc",
        "tickets": [
          {
            "passId": "1111111",
            "externalTicketId": "1234567"
          },
          {
            "passId": "222222222",
            "externalTicketId": "122442492"
          }
        ],
        "_class": "abc"
      }
    }