SELECT 语句中的 DATETIME 函数

DATETIME Function in SELECT Statement

为什么下面 SELECT 语句中的 DATEIME 转换会产生 210056 SQL 语法错误? "act_start_dt" 是格式为“2015-01-01”的 DATE 类型,"act_start_tm" 是表示自午夜以来的秒数的整数。

该语句在没有 DATETIME 调用的情况下工作正常。

SELECT TOP 100
    act_start_dt,
    act_start_tm,
    DATETIME(act_start_dt, act_start_tm)
FROM
    PUB.MyTable;

日期和时间列定义为:

act_start_dt[date(10) DEFAULT NULL]
act_start_tm[integer(10) DEFAULT 0]

ProgressDB 中的 DATETIME() 函数似乎将以下格式的时间戳作为输入:

2015-01-01 11:04:23

用户可以在 act_start_dtact_start_tm 列上使用 STRING 函数来获取您需要的格式。

DATETIME(STRING(act_start_dt,"9999-99-99") + " " +  STRING(act_start_tm,"HH:MM:SS"))