Teradata - 更改序列有效时间段的格式

Teradata - Change format of Sequenced Validtime period

我有以下查询:

SEQUENCED VALIDTIME PERIOD '(2017-11-06,2017-11-10)' 
SELECT a, b, c, 
d, e, f 
FROM table_1 

这将创建一个 table,其中包含列 abcdefVALIDTMEVALIDTIME 列包含类似于 (2017-11-09 07:17:03.120000-05:00, 2017-11-10 00:00:00.000000-05:00) 的数据。如何修改我的查询以获取此数据 11/09/2017 07:17:03, 11/10/2017 00:00:00?理想情况下,我想将此时间戳拆分为两列:start timeend time。但是,适用于普通列的技术似乎不适用于 VALIDTIME。请帮忙。

您的时间 table 应该有一个数据类型为 PERIOD 的列被指定为您的 VALIDTIME 列。我认为有一些辅助函数可以与 VALIDTIME 列一起使用,例如 BEGIN()END(),以提取您想要的值。一旦你这样做了,你应该能够按照你喜欢的方式格式化。类似于:

SELECT a,b,c,d,e,f,
  CAST(BEGIN(ValidTime_Column) AS DATE FORMAT 'MM/DD/YYYY HH:MM:SS'),
  CAST(END(ValidTime_Column) AS DATE FORMAT 'MM/DD/YYYY HH:MM:SS')
FROM table_1

我没有要检查的 TD 系统,因此您可能会遇到语法错误。试一试,如果有效请告诉我。