我有一张我用过的名为“MYTABLE”的数据表SELECT * FROM MYTABLE;
如何将此表的结果输出到 Teradata 数据库的 .csv 文件?
如果是小表(大约 1000 条记录),您可以在 SQL 助手中打开导入/导出模式。这将帮助您将表导出为 csv(您可以设置工具-> 选项-> 导入/导出),然后将文件导入您的数据库。
导入时,您可以使用以下语法:
INSERT INTO TABLE
VALUES (?,?,?,?);
的数量 ?应该与表/文件中的列数相同。
如果它是一个更大的表,Fastexport 数据并使用 Fastload/Multiload 导入它。
使用本机 Teradata 实用程序的两个可能选项:
如果您使用 Teradata FastExport 实用程序并在 EXPORT 命令中指定 MLSCRIPT 选项,则会自动生成一个 MultiLoad 脚本,该脚本可用于将数据文件加载到 Teradata 中。稍作调整,您就可以将其指向另一个系统并加载数据。
Teradata 的 ARC 实用程序可用于备份数据,然后使用 ARC 中的 COPY 工具将数据放在单独的系统上。
您需要一个 ETL 工具。试试这个论坛的指针。
我会在 bteq 中使用常规的导出命令。如果它是一个快速的系统,您可以在几分钟内获得一百万行,但如果速度较慢,您可能需要使用不同的应用程序或将自己限制为 100K 行。
.export file=myfile.csv
sel col1||','||col2||','||col3(title'') from mytable;
.export reset