测试重复
一个或多个域中的重复值,或者重复记录,可以是数据条目错误或如为了逃避监督的分割信用卡交易欺诈行为的结果。
唯一值要求
绝不能包含重复值的域是值唯一标识记录的域。例如,员工表绝不能包含重复的员工编号,因为每个编号都应该标识唯一的员工。
有效的重复值
重复值也可能是有效的。例如,交易表可能由于相同客户完成多项交易而包含重复的客户编号。
不同类型的重复项测试
可以使用 Analytics 以如下方式测试重复:
测试范围 | 使用此测试的条件: |
---|---|
一个域 |
特定域中的所有值都应该是唯一的,如员工编号或支票号码。 |
两个或更多个域的组合 |
任一单独的域不需要满足唯一性,但某些域组合起来时需要满足唯一性。 示例在年度薪资文件中,雇员编号域和支付日期域都会包含大量重复值。雇员每两周领取工资,同一天会向多个雇员发放工资。 但是,某一天,某个雇员仅会出现一次。如果在员工编号域和支付日期域的组合中存在重复值,则表明某个员工可能在同一支付期间被支付了两次工资。 |
记录中的所有域 |
检查是否存在完全重复记录,即记录中的每个域都是重复的。整个重复记录可以是数据条目错误或其他交易异常的结果。 |
步骤
可对活动表中的一或多个域进行测试,检测是否存在重复值或整个重复记录。

可以测试字符、数值和日期时间域是否有重复。如果字符和数值一起出现在字符域中,测试所有的字母数值字符。
说明
要使结果有效,必须在测试之前对要测试的域进行排序。可以提前排序域,或者在重复测试期间使用预排序选项。
- 选择 。
- 如果您想要检测一个或多个域中的重复值,请在主要选项卡中执行以下操作:
- 在重复域列表中选择要测试的域,或者单击重复域以选择域或者创建一个表达式。
域选择的顺序就是列在结果中显示的顺序。如果要将结果附加到现有的 Analytics 表中,列选择和顺序必须与现有表中的列选择和顺序完全相同。
- 如果您单击了重复域,则可以通过单击排序箭头
在一个或多个所选域的输出结果中指定降序排列顺序 (默认情况下为升序)。
- 选择一个或多个列表域以在输出结果中包含任何附加域,或者单击列表域以选择域、全部添加域或者创建一个表达式。
其他域可为结果提供有用的上下文。被选择以进行重复值测试的域会被自动显示在任何结果记录的开头处,而无须在列表域下专门选择。
- 在重复域列表中选择要测试的域,或者单击重复域以选择域或者创建一个表达式。
- 如果您想要检测完全重复记录,请在主要选项卡中执行以下操作:
- 单击重复域。
- 单击全部添加以将所有域添加到选定域。
- 通过单击排序箭头
,选择性地在一个或多个域的输出结果中指定降序排序顺序(默认情况下为升序)。
- 单击确定。
您无须从列表域列表中选择任何域,因为该表中的所有域都会被自动显示在结果记录中。
-
如果当前视图中有想要从处理中排除的记录,请在如果文本框中输入一个条件,或单击如果使用表达式生成器创建 IF 声明。
说明
在应用任何范围选项(前、后、当)之后,仅针对表中的剩余记录评估如果条件。
IF 声明中考虑到了视图中的所有记录,滤除那些不满足指定条件的记录。
- 测试大表的重复时,如果先前操作已对测试域进行了排序,可以选择取消选择预排序来节省时间。
说明
如果您取消选择预排序,则您选择以进行重复值测试的一个或多个域必须与之前排序的一个或多个域相匹配,才能保证结果有效。
如果选中的域和排序的域之间不匹配,则结果会伴随消息警告:文件序列出错。如果将结果输出到 Analytics 表中,警告消息会出现在命令日志中。
如果域中的数据未排序,则必须选中预排序以确保找到所有重复项。
- 然后单击输出选项卡。
- 在 目标面板上选择适当的输出选项:
- 屏幕 – 选择该选项可在 Analytics 显示区域中显示结果。如果输出表中包含大量的记录,那么将结果保存到文件要比在屏幕上显示结果更快且更有用。
- 打印 – 选择该选项会将结果发送到默认打印机。
- 图表 – 选择该选项可创建一个结果图表并在 Analytics 显示区域中显示它。
- 文件 – 选择该选项将结果保存或附加到文本文件中。该文件被保存在 Analytics 的外部。
说明
不适用于特定分析操作的输出选项会被禁用。
- 如果选择了 文件作为输出类型,请在作为面板中指定以下信息:
- 文件类型 – ASCII 文本文件或 Unicode 文本文件 (具体取决于您使用的 Analytics 的版本)是唯一选项。将结果保存到新文本文件中,或将结果附加到现有的文本文件中。
- 名称 – 在 名称文本框中输入文件名称。或单击 名称输入文件名称,或者在保存或另存为对话框中选择一个现有的文件,以覆盖或附加到该文件中。如果 Analytics 预填充文件名,您可以接受预填充的名称,也可以更改它。
您还可以指定一个绝对或相对路径,或导航到一个不同的文件夹,将文件保存或附加到与项目位置不同的位置。例如:C:\结果\输出.txt 或结果\输出.txt。
- 本地 – 禁用或选中。在本地保存文件是唯一的选项。
说明
对于从 Analytics Exchange 服务器表的分析或处理产生的输出结果,请选择本地。您不能使用本地设置将结果表导入到 AX 服务器。
- 根据输出类型的不同,您可以在文本框中选择性地指定页眉和/或页脚。
默认情况下,页眉和页脚居中放置。在页眉或页脚文本前输入左尖括号 (<)可左对齐文本。单击页眉或页脚可输入多行的页眉和页脚。另外,可以输入分号 (;)作为页眉或页脚文本框中的断行字符。左对齐多行要求在每行的开头处有一个尖括号。
- 单击更多选项卡。
- 在范围面板中选择适当的选项:
- 全部–默认时选择该选项。使其保持选中状态可指定对视图中的所有记录进行处理。
- 前 –选择该选项,并在文本框中输入数量,则会在视图的第一条记录处开始处理,处理对象仅包括指定数量的记录。
- 后 –选择该选项,并在文本框中输入数量,则会在视图中当前选择的记录处开始处理,处理对象仅包括指定数量的记录。最左边列中的实际记录数量必须选中,并非行中的数据。
- 当 – 选择该选项可通过 WHILE 声明根据特定条件或条件组限制对视图中记录的处理。可以在当文本框中输入条件,或者单击当来使用表达式生成器创建 WHILE 声明。
只有当指定条件值为真时,WHILE 声明才允许对视图中的记录进行处理。当条件变为假时,处理立即终止,不再考虑剩余的记录。可将当选项与全部、前或后选项结合使用。在达到一个限制后,请立即记下处理步骤。
说明
前或后选项中指定的记录数参考表中记录的物理或索引顺序,不考虑对视图进行过滤或快速排序的情况。不过,解析操作的结果与任何过滤相关。
如果对视图进行了快速排序,则后的行为类似于前。
- 如果您选择了文件作为输出类型,并且想要将输出结果附加到现有文件的末尾,请执行以下操作之一:
如果您要附加到一个文本文件或您确定与输出结果具有相同结构的 Analytics 表,请选择附加到现有文件。
如果要附加到 Analytics 表,并且您想让 Analytics 比较输出结果和现有表的记录长度,请使附加到现有文件保持未选定状态。如果记录的长度不相同,则数据结构不相同,并且附加操作无法正确工作。
说明
如果您不确定输出结果与现有表的数据结构是否相同,建议您使附加到现有文件保持取消选择状态。有关附加操作和数据结构的详细信息,请参见将结果附加到 Analytics 表和文本文件。
- 如果选择了文件(Analytics 表)作为输出类型,请选择或取消选择使用输出表,具体取决于是否想让包含输出结果的 Analytics 表在完成操作后自动打开。
- 单击确定。
说明
在下列情况下,仅显示重复的值或记录,而不会显示值或记录的初始实例:
- 将结果输出至屏幕或文本文件
- 仅在输出结果中包括测试域,而不选择任何附加域
如果输出至屏幕,则可以单击任意值以同时查看重复项以及值或记录的初始实例。
- 如果覆盖提示出现,请选择合适的选项。
如果想让附加选项显示,而实际未显示,请单击否取消操作并参阅 将结果附加到 Analytics 表和文本文件。
删除重复项
可使用汇总操作从数据集中删除重复值或记录,并将剩余的唯一值或记录保存到一个新的 Analytics 表中。

- 选择 。
- 在主要选项卡上,执行以下操作之一:
- 从汇总域列表中选择可能包含重复值的一个或多个域。
- 单击汇总域以选择一个或多个域或者创建一个表达式。
域选择的顺序就是列在结果中显示的顺序。
说明
请选择适当的域以达到您所需的唯一性等级。
例如,如果您想要删除重复的员工记录,并且仅选择姓氏域,则存在删除具有相同姓氏但具有不同名字的员工的所有记录的风险。同时选择姓氏域和名字域可提高唯一性等级。
要仅删除完全重复的记录,请单击汇总域和全部添加。
- 不要选择任意小计域。
- 可选。执行以下操作之一:
- 在其他域列表中选择要包括在输出结果中的其他域。
- 单击其他域以选择域或者创建一个表达式。
说明
请仅选择那些为每个汇总组中的所有记录包含相同值的域。要了解更多信息,请参考“其他域”选项。
- 如果可能包含重复值的域已经排序,您可以选择性地取消选择预排序。如果域中的数据未进行排序,必须选中预排序,确保获得有效结果。
-
如果当前视图中有想要从处理中排除的记录,请在如果文本框中输入一个条件,或单击如果使用表达式生成器创建 IF 声明。
说明
在应用任何范围选项(前、后、当)之后,仅针对表中的剩余记录评估如果条件。
IF 声明中考虑到了视图中的所有记录,滤除那些不满足指定条件的记录。
- 然后单击输出选项卡。
- 在至面板上选择文件。
- 在作为面板中指定以下信息:
文件类型 – ACL 表是唯一的选项。将结果保存到新的 Analytics 表中,或将结果附加到现有的 Analytics 表。
名称 – 在 名称文本框中输入表名。或单击 名称输入表名,或者在保存或另存为对话框中选择一个现有的表,以覆盖或附加到该表中。如果 Analytics 预填充了一个表名称,您可以接受预填充的名称或更改它。
您还可以指定一个绝对或相对路径,或导航到一个不同的文件夹,将表保存或附加到与项目位置不同的位置。例如:C:\结果\无重复项.fil 或 结果\无重复项.fil。
本地–只有在连接服务器表时启用。选择 本地将输出表保存到与项目相同的位置,或者指定一个路径或导航到不同的本地文件夹。使本地保持未选中状态,以便将输出表保存到 Analytics 服务器上的 Prefix 文件夹中。
说明
对于从 Analytics Exchange 服务器表的分析或处理中产生的输出结果,请选择本地。您不能使用本地设置将结果表导入到 AX 服务器。
- 单击更多选项卡。
- 在范围面板中选择适当的选项:
- 全部–默认时选择该选项。使其保持选中状态可指定对视图中的所有记录进行处理。
- 前 –选择该选项,并在文本框中输入数量,则会在视图的第一条记录处开始处理,处理对象仅包括指定数量的记录。
- 后 –选择该选项,并在文本框中输入数量,则会在视图中当前选择的记录处开始处理,处理对象仅包括指定数量的记录。最左边列中的实际记录数量必须选中,并非行中的数据。
- 当 – 选择该选项可通过 WHILE 声明根据特定条件或条件组限制对视图中记录的处理。可以在当文本框中输入条件,或者单击当来使用表达式生成器创建 WHILE 声明。
只有当指定条件值为真时,WHILE 声明才允许对视图中的记录进行处理。当条件变为假时,处理立即终止,不再考虑剩余的记录。可将当选项与全部、前或后选项结合使用。在达到一个限制后,请立即记下处理步骤。
说明
前或后选项中指定的记录数参考表中记录的物理或索引顺序,不考虑对视图进行过滤或快速排序的情况。不过,解析操作的结果与任何过滤相关。
如果对视图进行了快速排序,则后的行为类似于前。
- 选择或取消选择使用输出表,具体取决于是否想让包含输出结果的 Analytics 表在操作完成后自动打开。
- 如果您想要将输出结果附加到现有 Analytics 表的末尾,请执行以下操作之一:
如果您肯定输出结果和现有表的结构完全相同,请选择附加到现有文件。
如果您希望 Analytics 比较输出结果和现有表的记录长度,请使附加到现有文件保持未选择状态。如果记录的长度不相同,则数据结构不相同,并且附加操作无法正确工作。
说明
如果您不确定输出结果与现有表的数据结构是否相同,建议您使附加到现有文件保持取消选择状态。有关附加操作和数据结构的详细信息,请参见将结果附加到 Analytics 表和文本文件。
- 单击确定。
- 如果覆盖提示出现,请选择合适的选项。
如果想让附加选项显示,而实际未显示,请单击否取消操作并参阅 将结果附加到 Analytics 表和文本文件。