Teradata 执行导出时缺少前导零

Teradata 执行导出时缺少前导零,teradata,Teradata,我使用的是Teradata,代码如下: SELECT ... CAST(t1.atr AS VARCHAR(30)) ... FROM ( SELECT ... COALESCE(sum(t1.atr),0) AS atr, ... ) AS t1 问题是,当“atr”的值为0或0.xy或以0开头时,输出分别为“.00”和“.xy”。 我希望有以下输出:分别为“0.00”和“0.xy”。 顺便说一句,在这一步中,我正在以csv格式文件进行导出。您是否尝试为您的强制转换指定格式 答案是: CAS

我使用的是Teradata,代码如下:

SELECT
...
CAST(t1.atr AS VARCHAR(30))
...
FROM (
SELECT
...
COALESCE(sum(t1.atr),0) AS atr,
...
) AS t1
问题是,当“atr”的值为0或0.xy或以0开头时,输出分别为“.00”和“.xy”。 我希望有以下输出:分别为“0.00”和“0.xy”。
顺便说一句,在这一步中,我正在以csv格式文件进行导出。

您是否尝试为您的强制转换指定格式

答案是:

CAST(   CAST(t1.atr AS DECIMAL(13,4) FORMAT 'Z(9)9.99')   AS VARCHAR(30))

现在我正在记录错误消息:选择失败。3617格式“ZZZ 9.99”与数据类型不匹配
CAST(   CAST(t1.atr AS DECIMAL(13,4) FORMAT 'Z(9)9.99')   AS VARCHAR(30))