EXTRACT 命令
从 Analytics 表提取数据并将其输出至新的 Analytics 表,或者将其附加至现有的 Analytics 表。您可以提取整个记录或所选域。
语法
EXTRACT {RECORD|FIELDS 域名称 <AS 显示名称> <...n>|FIELDS ALL <EXCLUDE 域名称 <...n>>} TO 表名称 <LOCAL> <IF 测试> <WHILE 测试> <FIRST 范围|NEXT 范围> <EOF> <APPEND> <OPEN>
参数
名称 | 描述 |
---|---|
RECORD | FIELDS 域名称 | FIELDS ALL |
要包括在输出中的域:
|
AS 显示名称 可选 |
仅在使用 FIELDS 域名称提取时有效。 新 Analytics 表的视图中的域的显示名称(备选列标题)。如果您希望显示名称与域名称或源表中的现有显示名称相同,请不要使用 AS。 请将显示名称指定为带引号的字符串。如果您希望列标题包含换行符,请在单词之间使用分号 (;)。 说明
AS 仅在提取至新表时有效。如果您要附加到现有表,则现有表中的备用列标题优先。 |
EXCLUDE 域名称 可选 |
仅在使用 FIELDS ALL 提取时有效。 要从该命令中排除的一个或多个域。EXCLUDE 使您可以通过排除指定的域优化 FIELDS ALL。 EXCLUDE 必须紧跟在 FIELDS ALL 后面。例如: FIELDS ALL EXCLUDE 域 1 域 2 |
TO 表名 |
要将命令结果发送到的位置:
|
LOCAL 可选 |
请将输出文件保存在与 Analytics 项目相同的位置。 说明 仅当针对服务器表运行该命令并且输出文件为 Analytics 表时适用。 LOCAL 参数必须紧跟在 TO 参数后面。 |
IF 测试 可选 |
一个条件表达式,它必须为真以便处理每个记录。仅对满足条件的那些记录执行该命令。 说明 在应用任何范围参数(WHILE、FIRST、NEXT)之后,仅针对表中的剩余记录评估 IF 条件。 |
WHILE 测试 可选 |
一个条件表达式,它必须为真以便处理每个记录。该命令被一直执行到条件的计算结果为假或者到达表的末尾为止。 说明 如果您将 WHILE 与 FIRST 或 NEXT 结合使用,请在达到一个限制时立即记下处理步骤。 |
FIRST 范围 | NEXT 范围 可选 |
要处理的记录数:
请使用范围指定要处理的记录数。 如果您省略 FIRST 和 NEXT,则会默认处理所有记录。 |
EOF 可选 |
在到达文件末尾之后,再执行该命令一次。 当位于 GROUP 命令内部时,这可以确保表中的最后一个记录得到处理。请仅当所有域为引用较早记录的计算域时才使用 EOF。 |
APPEND 可选 |
将命令输出附加到现有文件的末尾,而不是覆盖现有文件。 说明 您必须确保命令输出的结构和现有文件完全相同:
Analytics 将输出附加到现有文件,而无论其结构如何。如果输出的结构和现有文件不匹配,则可能生成混乱的、不完整的或不准确的数据。 |
OPEN 可选 |
在命令执行后打开该命令创建的表。仅当该命令创建输出表时有效。 |
示例
将表中的所有记录提取到新表
您通过将所有记录提取到一个新的 Analytics 表创建客户应收账款表的完全重复表。任何计算域都被保留为计算域:
OPEN 客户应收账款
EXTRACT RECORD TO "客户应收账款_2"
将表中的所有域提取到新表
您将 AR_Customer 表中的所有已定义域提取到一个新的 Analytics 表。任何计算域都被转换为物理域并且被用实际计算值填充:
OPEN 客户应收账款
EXTRACT FIELDS ALL TO "AR_Customer_2"
提取某个表中的所有记录并将其附加到现有表
您提取 AR_Customer 表中的所有记录并将其作为一个组附加到 AR_Customer_Master 表的末尾:
OPEN 客户应收账款
EXTRACT RECORD TO "AR_Customer_Master" APPEND
提取某个表中的所有记录并将其附加到另一个文件夹中的某个现有表
您提取 AR_Customer 表中的所有记录并将其作为一个组附加到 AR_Customer_Master 表(它位于一个不同于 Analytics 项目文件夹的文件夹中)的末尾:
OPEN 客户应收账款
EXTRACT RECORD TO "C:\Users\Customer Data\AR_Customer_Master" APPEND
将一个表中的域子集提取到新表
在提取表中域的子集时,有两个选项:
- 指定要提取的各个域
- 指定 FIELDS ALL 并指定要从提取范围中排除的域
提示
使用任何一种最省力的方法。
下面的示例参照 AR_Customer 表,它包含七个域:
- 参考编号
- 客户编号
- 客户名称
- 交易类型
- 发票日期
- 到期日
- 发票金额
指定要提取的域
您将 AR_Customer 表中的三个域提取到一个新的 Analytics 表:
OPEN 客户应收账款
EXTRACT FIELDS 名称 到期日期 日期 TO "客户应收账款日期.fil"
指定 FIELDS ALL 并指定要排除的域
您将 AR_Customer 表中的所有域(Reference_num 域除外)提取到一个新的 Analytics 表:
OPEN 客户应收账款
EXTRACT FIELDS ALL EXCLUDE Reference_num TO "AR_Customer_Dates.fil"
创建被提取域的显示名称
您提取 AR_Customer 表中的三个域并且为新的 Analytics 表中的域创建显示名称:
OPEN 客户应收账款
EXTRACT FIELDS Name AS "Customer;Name" Due AS "Due;Date" Date AS "Invoice;Date" TO "AR_Customer_Dates.fil"
根据条件提取域
如果到期日期域中的日期早于 2014 年 7 月 1 日,则将 AR_Customer 表中的三个域提取到一个新的 Analytics 表:
OPEN 客户应收账款
EXTRACT FIELDS 名称 到期日期 日期 IF 到期日期 < `20140701` TO "到期未付.fil"
备注
有关此命令工作方式的详细信息,请参见提取数据或提取并附加数据。
EXTRACT 与复制表之比较
EXTRACT 除了创建一个新的表布局以外,还创建一个新的源数据文件 (.fil)。
使用导航器( )复制表会创建一个与原始源数据文件相关联的新的表布局。它不会创建新的数据文件。