选择第一个匹配记录

您可以使用 Analytics 命令来选择表中匹配搜索条件的第一个记录。该记录将被选择,而不是被隔离,这与 Analytics 中的其他类型的搜索不同。其余记录仍然呈现在表视图中。

在脚本中的用处

选择第一个匹配记录的能力主要可在 Analytics 脚本中使用。例如,与其他编写脚本的技巧相结合,可使用下面的命令顺序地遍历某个表中的记录,以便基于每个选定记录的内容来执行重复操作。

“搜索”对话框

在 Analytics 用户界面中,您可以在搜索对话框(数据 > 搜索)中访问这些命令。

下表介绍了搜索对话框中的不同选项。它还提供了等效的 ACLScript 命令(假定这些选项主要用在 Analytics 脚本中)。

说明

您可以单击下面的任一命令名称,以了解有关该命令的详细信息。

“搜索”对话框选项

等效的 Analytics 命令

描述

定位记录

定位记录

在表中选择特定记录号。

定位条件

LOCATE

选择任何类型的字面量的第一个实例,或使用任何数据类型或数据类型混合的表达式的第一个实例。不必对表进行索引。

例如:

  • Vendor_City = "New York"
  • 发票金额 = 296.50
  • 发票日期 = `20141231`
  • Vendor_City = v_city
  • Vendor_City = v_city AND Invoice_Amount > 1000

查找文字

FIND

在按升序索引的字符域中选择字符字面量(例如,New York)的第一个实例。

说明

FIND 命令和 FIND( ) 函数是两个具有重大区别的不同 Analytics 功能。

查找表达式

SEEK

在按升序索引的字符域中选择字符字面量(例如,“New York”)或字符表达式(例如,v_城市)的第一个实例。

索引要求

要使用查找字面量寻找表达式选项,您必须首先按升序索引您想要搜索的字符域。这两个选项都仅在索引域中搜索。

如果表按照一个以上的域索引(嵌套索引),则只搜索主键域,并且假定它是按升序索引的字符域。如果索引为条件性的,则从视图中排除的任何记录也会被从搜索中排除。

准则

功能区域 准则
数据类型

所有选项都可与字符域一起使用。只有定位条件选项可以与日期时间域或数值域一起使用。

部分匹配

搜索字符域时支持不完全匹配,但搜索字符串必须出现在域的开头。

例如,Vendor_Name = "Uni" 可找到 “United Equipment”,但 Vendor_Name = "Equip" 找不到。

区分大小写 当用于搜索字符域时,所有选项都区分大小写。
性能 定位条件选项按顺序搜索表,因而比搜索索引表的查找字面量寻找表达式选项的速度慢。但是,定位条件选项不需要花费时间对表进行索引。
记录顺序 定位条件选项保持表中记录的原始顺序,根据您的分析的性质的不同,这一特点可能是有益的。

在表中选择特定记录号

  1. 从 Analytics 主菜单中选择数据 > 搜索 > 定位记录。
  2. 表达式文本框中键入记录编号,然后单击确定

    如果找到该记录号,则表会定位到该记录处。

选择任何类型字面量或表达式的第一个实例

  1. 从 Analytics 主菜单中选择数据 > 搜索 > 定位条件
  2. 执行以下操作之一:
    • 表达式文本框中输入一个表达式,然后单击确定
    • 单击表达式以打开表达式生成器,创建一个表达式,单击确定,然后再次单击确定

    表达式可以根据需要简单或复杂,可以涉及一个域或多个域,且可以混用数据类型。例如:

    • Vendor_Name = "United Equipment"

    • Invoice_Amount > 1000

    • Vendor_Name = "United Equipment" AND Invoice_Amount > 1000 AND Invoice_Date > `20140930`

    您必须将字符字面量值放在引号中,将日期时间值放在反引号中。

    如果找到指定值,则表会定位到该记录。

    如果找不到指定的值,则表会定位到该表中的第一个记录。

选择索引表中字符字面量的第一个实例

  1. 为您想要搜索的表激活索引。

    该表必须按您想要搜索的字符域进行索引。

  2. 从 Analytics 主菜单中选择数据 > 搜索 > 查找字面量
  3. 表达式文本框中键入一个字符字面量值,然后单击确定

    除非引号是域中数据的一部分,否则请不要将字符字面量值放在引号中。例如:

    • United Equipment

    • R(查找以“R”开头的第一个值)

    如果找到指定值,则表会定位到该记录。

    如果找不到指定的值,则会显示消息“没有索引匹配键”。表将定位至键域值大于指定值的第一个记录,或者,如果没有大于指定值的值,则定位至该表中的第一个记录。

选择索引表中字符字面量或表达式的第一个实例

  1. 为您想要搜索的表激活索引。

    该表必须按您想要搜索的字符域进行索引。

  2. 从 Analytics 主菜单中选择数据 > 搜索 > 寻找表达式
  3. 执行以下操作之一:
    • 表达式文本框中输入一个字符类型表达式或字符字面量值,然后单击确定
    • 单击表达式以打开表达式生成器,创建一个表达式,单击确定,然后再次单击确定

    例如:

    • v_vendor_name

    • "United Equipment"

    您必须将字符字面量值放在引号中。

    如果找到指定值,则表会定位到该记录。

    如果找不到指定的值,则会显示消息“没有索引匹配键”。表将定位至键域值大于指定值的第一个记录,或者,如果没有大于指定值的值,则定位至该表中的第一个记录。

Analytics 搜索命令比较

下表提供了 Analytics 搜索命令的高级别比较。当您在 Analytics 脚本中使用任何命令时,了解控制每个命令的具体规则有何不同可能是有用的。

功能区域 定位记录/定位条件 查找文字 查找表达式
数据类型可搜索
  • 字符
  • 日期时间
  • 数值

(您还可以按记录号搜索)

字符
搜索范围
在相关域中搜索

(必须指定完全限定域名称)

需要索引

(需要升序)

前导空格可搜索

(将数据或搜索字符串中的空格视为字符)

(将数据或搜索字符串中的空格视为字符)

区分大小写
部分匹配

(搜索字符串必须出现在域的开头,仅限字符)

(搜索字符串必须出现在域的开头)

需要在搜索项前后添加引号
  • 是(对于字符)
  • 否(对于数值)
  • 可选(对于记录号)
  • 反引号(对于日期时间)
否(不得将搜索术语放在引号中,除非引号是数据的一部分)
受“精确字符比较”选项

(SET EXACT ON/OFF)

影响
支持表达式
备注 搜索对话框中的定位记录定位条件操作与 LOCATE RECORD/LOCATE 命令完全相同。 搜索对话框中的查找字面量操作和 FIND 命令完全相同。 搜索对话框中的寻找表达式操作和 SEEK 命令完全相同。