INTO EXTERNAL 子句

INTO EXTERNAL 子句将查询结果卸载到外部表内,创建缺省的外部表描述,当您之后重新加载这些文件时可以使用。

使用 SELECT INTO EXTERNAL 语句的 Table Options 子句来指定在外部表中卸载的数据的格式。
INTO table 子句
USING Options
Table Options
元素 描述 限制 语法
field_delimiter 分隔字段的字符。缺省为管道(|)字符 如果您未设置 RECORDEND 环境变量,则 record_delimiter 的缺省值为换行字符(CTRL-J)。

如果您使用一个不可打印的字符作为定界符,则将它编码作为该 ASCII 字符的八进制表示。例如,'\006' 可表示 CTRL-F。

用引号括起的字符串
record_delimiter 分隔记录的字符   用引号括起的字符串
table 在此声明的要接收查询结果的表的名称 在当前数据库中您拥有的表、视图、同义词和序列对象的名称之中必须是唯一的 数据库对象名

INTO EXTERNAL 子句将 CREATE EXTERNAL TABLE . . . SAMEAS 与 INSERT INTO . . . SELECT 语句的功能组合在一起。

INTO EXTERNAL 子句重写在 EXTERNAL 表中任何先前存在的行。

下表描述应用于卸载数据的关键字。如果您想在外部表描述中为之后重新加载该表指定附加的表选项,则请参阅 Table 选项

在 SELECT ... INTO EXTERNAL 语句中,您可指定除了固定的格式选项之外的在 CREATE EXTERNAL TABLE 语句中讨论的任何表选项。

当创建的数据文件的格式类型或为定界的文本(如果您使用 DELIMITED 关键字的话)或 GBase 8s 内部的数据格式的文本(如果您使用 GBASEDBT 关键字的话)时,您可使用 INTO EXTERNAL 子句。您不可将它用于固定的格式卸载。

关键字
作用
DELIMITER
指定在定界的文本文件中分隔字段的字符
ESCAPE
指示数据库服务器识别在基于 ASCII 文本的数据文件中字段之间作为分隔符嵌入的 ASCII 特殊字符。 紧接在 DELIMITER 指定的 field_delimiter 分隔符的任何实例之前的缺省的转义字符,此处的那个字符是该数据中的字母值。 或者您包括或者您省略 ESCAPE 关键字,在缺省情况下,此功能是被启用的,或者您可指定 ESCAPE ON 关键字来使得您的 SQL 代码的读者更清楚地了解启用了此特性。要防止在该数据中的字母的 field_delimiter 分隔符字符被转义,您必须指定 ESCAPE OFF 关键字。

在缺省情况下,ESCAPE 关键字在字母的 field_delimiter 字符之前插入的转义字符是反斜杠(\)字符。但如果将 DEFAULTESCCHAR 配置参数设置为单个字符值,则以那个字符取代定界符字符的反斜杠(\)用作字母,当指定 ESCAPEESCAPE ON 时。

FORMAT
指定在该数据文件中的数据的格式
RECORDEND
指定在定界的文本文件中分隔记录的字符

要获取更多关于外部表的信息,请参阅 CREATE EXTERNAL TABLE 语句

1 仅可使用此路径一次
2 请参阅 DATAFILES 子句