联接表

概念信息

JOIN 命令

使用每个表中的共同键域,可以将两个具有不同记录结构的 Analytics 表联接为新的第三个表。第三个表中包含的域可为两个原始表中域的任意组合。

说明

请仔细识别联接中的主表和辅助表,因为如果颠倒顺序,结果可能不同。有关详细信息,请参见联接或关联的常见用途

步骤

说明

完成上述步骤之后,将会显示详细信息。请参见“联接”对话框选项

  1. 在浏览器中,打开主表,右键单击辅助表,然后选择作为辅助表打开

    主表和辅助表图标将用数字 1 和 2 更新以指示它们之间的关系

  2. 选择数据 > 联接
  3. 主要选项卡上:
    1. 选择联接类型。

      下面解释了联接类型。

    2. 主键列表中选择主键域。
    3. 辅助键列表中选择辅助键域。
    4. 主域辅助域列表中选择要包括在联接表中的域。

      说明

      如果您想要将其包括在联接表中,则必须明确选择主键域和辅助键域。

      提示

      您可以使用 Ctrl+单击选择多个不相邻的域,使用 Shift+单击选择多个相邻的域。

  4. 目标文本框中,指定新的联接表的名称。
  5. (可选)在更多选项卡上:
    1. 如果您向要仅处理记录的一个子集,请选择范围面板中的选项之一。
    2. 如果您想要将输出结果附加(添加)到现有 Analytics 表的末尾,请选择附加到现有文件
  6. 单击确定

    新的联接表是输出。

“联接”对话框选项

下面的表提供了有关联接对话框中选项的详细信息。

“主要”选项卡

选项 –“联接”对话框 描述
联接类型

指定要使用哪个 Analytics 联接类型。

有关详细信息,请参见 在联接表中包含哪些记录?

匹配的主记录和辅助记录

(第一个辅助记录匹配)

联接的输出表包含:

  • 所有匹配主记录和第一个匹配辅助记录

匹配的主记录和辅助记录

(所有辅助匹配)

联接的输出表包含:

  • 所有匹配主记录和所有匹配辅助记录
  • 对于主表和辅助表之间的每个匹配,都有一个记录

不匹配的主记录

联接的输出表包含:

  • 不匹配的主记录

所有主记录和匹配的辅助记录

联接的输出表包含:

  • 所有主记录(匹配的和不匹配的)以及第一个匹配辅助记录

所有辅助记录和匹配的主记录

联接的输出表包含:

  • 所有辅助记录(匹配的和不匹配的)以及所有匹配主记录

    对于任何重复辅助匹配而言,只有第一个实例被联接到主记录。

所有主记录和辅助记录

联接的输出表包含:

  • 所有主记录和所有辅助记录(匹配的和不匹配的)

    对于任何重复辅助匹配而言,只有第一个实例被联接到主记录。

辅助表 选择辅助表的备用方法。
主键

辅助键

指定要用来联接两个表的公共键域。
  • 您可以直接在主键辅助键列表中选择公共键域。
  • 您还可以单击主键辅助键以打开选定域对话框,然后可以在这里选择公共键域,或者在主键上创建表达式。

关键字域指南:

  • 数据类型键域可为任何数据类型,但彼此的数据类型必须相同。

    一个例外是字符和数值键域:它们可以相互联接。

  • 日期时间子类型日期时间子类型(日期、日期时间和时间)只能被联接到相同的子类型。
  • 长度
    • 建议使数字关键字域长度保持相同。
    • 如果字符键域的长度不同,将自动对其进行协调。
    • 日期时间键域的长度不需要相同。
  • 名称和起始位置键域名称和起始位置可以不同,但它们必须描述相同的数据元素。
  • 多键域如果需要,每个表中的公共键可包括一个以上的键域。有关详细信息,请参见使用多个关键字域
主域

辅助域

输入要包括在联接表中的域。
  • 您可以直接在主域辅助域列表中选择域。
  • 您还可以单击主域辅助域以打开选定域对话框,然后可以在这里选择域,或者在一个或多个主域上创建表达式。
  • 您选择主域和辅助域的顺序决定了结果联接表中的域顺序。

    作为一个整体,在联接表中,主域会出现在辅助域的前面。

预排序主表

预排序辅助表

按其键域或域对主表或辅助表进行排序。
  • 如果一个或两个键域已被合适地排序或索引,则可以取消选择预排序
  • 预排序会增加联接表所花费的时间,因此您应该仅在需要时使用此功能。
  • 必须按升序对辅助键域进行排序或索引。
本地

如果您被连接到服务器表,请指定在何处保存联接表。

  • 选择本地会将输出表保存到与 Analytics 项目相同的位置、指定的路径或您导航到的位置。
  • 取消选择本地会将输出表保存到 AX 服务器上的 Prefix 文件夹。
使用输出表 指定包含输出结果的 Analytics 表在完成操作后是否自动打开。
如果

(可选)使您可以创建一个条件以从处理范围中排除记录。

  • 您可以在如果文本框中输入一个条件,或者单击如果来使用表达式生成器创建一个 IF 语句。
  • 对于大多数 Analytics 联接类型,该条件只能引用主表。
  • 对于联接类型匹配的主记录和辅助记录(所有辅助匹配),该条件可引用主表、辅助表或者两者。

    说明

    要在表达式生成器中访问辅助表域,请在来自表下拉列表中选择辅助表。

    在应用任何范围选项()之后,仅针对表中的剩余记录评估如果条件。

指定输出表的名称和位置。
  • 要将输出表仅保存到 Analytics 项目文件夹,请只输入表名称。
  • 要将输出表保存在除项目文件夹以外的位置,请指定一个绝对或相对文件路径,或者单击目标以导航到其他文件夹。

    例如: C:\Results\Output.filResults\Output.fil

无论将输出表保存到何处,打开项目时,如果该项目中还没有此表,则会将其添加到该项目中。

如果 Analytics 预填充了一个表名称,您可以接受预填充的名称或更改它。

说明

Analytics 表名称限制为 64 个字母数字字符,且不包括 .FIL 扩展名。该名称可以包括下划线字符 ( _ ),但不能包括其他特殊字符或任何空格。该名称不能以数字开头。

“更多”选项卡

选项 –“联接”对话框 描述
“范围”面板 指定对主表中的哪些记录进行处理:
  • 所有(默认)主表中的所有记录都被处理。
  • 选择该选项并在文本框中输入一个数量,则会从主表中的第一个记录开始处理,并且仅包括指定数量的记录。
  • 选择该选项并在文本框中输入一个数量,则会从主表视图中当前选择的记录开始处理,并且仅包括指定数量的记录。

    必须选中最左侧列中的实际记录编号而非该行中的数据。

  • 选择该选项可使用 WHILE 语句根据相应的条件限制对主表中记录的处理。
    • 可以在文本框中输入条件,或者单击来使用表达式生成器创建 WHILE 语句。
    • 只有当指定条件的值为真时,WHILE 语句才允许对记录进行处理。
    • 可将选项与全部选项结合使用。在达到一个限制后,请立即记下处理步骤。

说明

选项中指定的记录数参考表中记录的物理或索引顺序,不考虑对视图进行过滤或快速排序的情况。不过,解析操作的结果与任何过滤相关。

如果视图进行了快速分类,操作相同。

附加到现有文件 指定将输出结果附加(添加)到现有 Analytics 表的末尾。

说明

如果您不确定输出结果与现有表的数据结构是否相同,建议您使附加到现有文件保持取消选择状态。

有关附加和数据结构的详细信息,请参阅将输出结果附加到现有表

确定 执行操作。
  • 在将字符和数值键域相互联接,或者将具有不同长度的字符键域联接时,会显示一条消息,声称 Analytics 将尝试对域进行协调。
  • 如果覆盖提示出现,请选择合适的选项。

    如果您想让附加选项显示出来,而实际上未显示,请单击取消操作并参见将输出结果附加到现有表