Teradata 如何将FastExport配置为不导出科学记数法中的浮动?

Teradata 如何将FastExport配置为不导出科学记数法中的浮动?,teradata,Teradata,我们正在尝试将通过快速导出创建的文件加载到oracle数据库中。 但是,浮点列的导出方式如下:1.47654345670000000E010 如何将fastexport配置为如下导出:14765434567 我们正在通过SQL*Loader将导出的文件加载到oracle数据库中 更新: 最初它在提供给FastExport的查询中使用:cast(XXXX作为varchar(500))。解决方案是使用cast(cast(FLOAT_VAL作为格式“Z(16)”作为varchar(16))作为varc

我们正在尝试将通过快速导出创建的文件加载到oracle数据库中。
但是,浮点列的导出方式如下:
1.47654345670000000E010

如何将fastexport配置为如下导出:
14765434567

我们正在通过SQL*Loader将导出的文件加载到oracle数据库中

更新:

最初它在提供给FastExport的查询中使用:
cast(XXXX作为varchar(500))

解决方案是使用
cast(cast(FLOAT_VAL作为格式“Z(16)”作为varchar(16))作为varchar(16))

要使其全部为数字并用空格填充:
cast(FLOAT_VAL作为格式“Z(16)”

要删除填充:
cast(作为varchar(16))

另一种解决方案:
trim(cast(FLOAT_VAL作为格式“Z(16)”))


你所有的浮点数都是整数吗?如果没有,您能给出该列中的值的更多示例吗?您能提供用于生成导出文件的FastExport脚本或SQL吗?您是否尝试在SELECT语句中将其强制转换为固定点数?数据中的所有浮点实际上都是整数。我完全不知道他们为什么那样做。
.logtable sysdba.TABLE_NAME;
.run file XXX/XXXXX/XXXXXX/XXXXX.btq;
.begin export;
.export outfile /XXX/XXX/XXX/XXX/YYYYYYY.YYYYYYYYYY_19000100-19000100 MODE RECORD FORMAT TEXT;
SELECT cast( cast(cast(FLOAT_VAL as FORMAT 'Z(16)') as varchar(16))
          || case when XXXXXXXXXXXXXXXXXXXX      is null then '|' else cast(XXXXXXXXXXXXXXXXXXXX      as varchar(500)) || '|' end
          || case when XXXXXXXXXXXXXXXXXXXXX     is null then '|' else cast(XXXXXXXXXXXXXXXXXXXXX     as varchar(500)) || '|' end
          || case when XXXXXXXXXXXXXXXXXXXXXXXXX is null then '|' else cast(XXXXXXXXXXXXXXXXXXXXXXXXX as varchar(500)) || '|' end
          || case when XXXXXX                    is null then '|' else cast(XXXXXX                    as varchar(500)) || '|' end
          || case when XXXXXXXXXX                is null then '|' else cast(XXXXXXXXXX                as varchar(500)) || '|' end
          || case when XXXXXXXXXXXXXXX           is null then '|' else cast(XXXXXXXXXXXXXXX           as varchar(500)) || '|' end
          || case when XXXXXXXXXXXXXXXXXXXXX     is null then '|' else cast(XXXXXXXXXXXXXXXXXXXXX     as varchar(500)) || '|' end
          || case when XXXXXXXXXXXXXXXX          is null then '|' else cast(XXXXXXXXXXXXXXXX          as varchar(500)) || '|' end
          || case when XXXXXXXXXXXXXXXXX         is null then '|' else cast(XXXXXXXXXXXXXXXXX         as varchar(500)) || '|' end
          || case when XXXXXXXXXXXXXX            is null then '|' else cast(XXXXXXXXXXXXXX            as varchar(500)) || '|' end
          || case when XXXXXXXXXXXXXXX           is null then '|' else cast(XXXXXXXXXXXXXXX           as varchar(500))        end
       as char(360))
  from YYYYYYY.YYYYYYYYYY;
.end export;