LOOKUP() 函 数

LOOKUP() 函 数 - 图1在表中搜索字段值与指定表达式匹配的第一个记录

语 法

LOOKUP( ReturnField , eSearchExpression , SearchedField [, cTagNam e])

返 值 类 型

LOOKUP() 函 数 - 图2LOOKUP() 函 数 - 图3LOOKUP() 函 数 - 图4LOOKUP() 函 数 - 图5LOOKUP() 函 数 - 图6LOOKUP() 函 数 - 图7LOOKUP() 函 数 - 图8LOOKUP() 函 数 - 图9字符型 数值型 货币型 浮点型 整型 双精度型 日期型 日期时间型或逻辑型

参 数 描 述

ReturnField

LOOKUP() 函 数 - 图10LOOKUP() 函 数 - 图11LOOKUP() 函 数 - 图12LOOKUP() 函 数 - 图13LOOKUP() 函 数 - 图14指 定 的 一 个 字 段 搜 索 成 功 时 LOOKUP ( ) 函 数 返 回 此 字 段 中 的 内 容 如 果搜 索 不 成 功 LOOKUP( ) 函 数 返 回 与 ReturnField 长 度 和 数 据 类 型 都 相 同 的空 字 符 串

eSearchExpression

LOOKUP() 函 数 - 图15LOOKUP() 函 数 - 图16LOOKUP() 函 数 - 图17指 定 搜 索 表 达 式 搜 索 表 达 式 常 常 是 表 中 某 个 字 段 的 内 容 或 者 与 活 动 索 引或 复 合 索 引 标 识 的 索 引 表 达 式 相 对 应

SearchedField

LOOKUP() 函 数 - 图18LOOKUP() 函 数 - 图19指 定 要 搜 索 的 字 段 如 果 该 表 没 有 活 动 索 引 LOOKUP ( ) 函 数 对 由

LOOKUP() 函 数 - 图20SearchedField 指 定 的 字 段 执 行 顺 序 搜 索

LOOKUP() 函 数 - 图21如果打开的某个索引文件或索引标识的索引关键字表达式正是您指定的搜索字段

LOOKUP() 函 数 - 图22LOOKUP ( ) 函数将利用索引文件或索引标识执行快速搜索

cTagName

LOOKUP() 函 数 - 图23指 定 L O O K U P ( ) 函 数 在 搜 索 时 使 用 的 复 合 索 引 标 识 名 复 合 索 引 搜 索 是

LOOKUP() 函 数 - 图24LOOKUP( ) 函 数 所 能 执 行 的 最 快 的 搜 索 方 式

说 明

LOOKUP() 函 数 - 图25LOOKUP() 函 数 - 图26LOOKUP() 函 数 - 图27如果搜索成功 LOOKUP ( ) 函数移动记录指针指向匹配记录 并返回该记录中指定字段的内容

LOOKUP() 函 数 - 图28LOOKUP() 函 数 - 图29LOOKUP() 函 数 - 图30如果没有找到搜索表达式 LOOKU P( ) 函数返回与 ReturnField 长度和数据类型相同的空字符串 并将记录指针定位在文件尾

LOOKUP() 函 数 - 图31LOOKUP() 函 数 - 图32如果使用 LOOKU P( ) 在父表中搜索 则把所有相关子表的记录指针移动到相关记录上

LOOKUP() 函 数 - 图33本函数不能用 Rushmore 优化

示 例

LOOKUP() 函 数 - 图34LOOKUP() 函 数 - 图35LOOKUP() 函 数 - 图36LOOKUP() 函 数 - 图37LOOKUP() 函 数 - 图38在下面的示例中 LOOKUP ( ) 函数使用索引标识 company 搜索字符串 "Ernst Handel" 的第一次出现 如果搜索成功 LOOKUP( ) 函数返回字段 contact 的内容 并由 @ ... SAT 命令显示这个返回值

CLOSE DATABASES

OPEN DATABASE (HOME(2) + 'data\testdata')

USE customer ORDER company && 打开 Customer 表

CLEAR

@ 2,2 SAY LOOKUP ( contact, 'Ernst Handel', company, 'company')

请 参 阅

FIND, INDEX, LOCATE, SEEK, SEEK ( )