将时间戳0的Teradata转换为AM / PM格式

问题描述

我有一张桌子有下面的数据。 START_TIME的数据类型为时间戳(0),而AVG_RUN_TIME_MINS为整数。 我想打印等于-( START_TIME + AVG_RUN_TIME_MINS )的 EXPECTED_COMPLETION_TIME ,并且输出格式为-'10:00 AM'或'08:00 PM'

如何实现这种情况?

START_TIME             AVG_RUN_TIME_MINS
----------------------------------------
8/27/2020 06:14:49             120
8/27/2020 16:10:28             3
8/27/2020 06:01:05             60
8/27/2020 05:50:30             85

解决方法

将分钟添加到开始时间,并使用TO_CHAR将其作为字符串显示:

to_char(START_TIME + cast(AVG_RUN_TIME_MINS as interval minute(4)),'hh:mi AM')