2 回答
TA贡献1880条经验 获得超4个赞
判断一个表达式是否与一组表达式中的某一个相匹配。
INLIST(eExpression1, eExpression2 [, eExpression3 ...])
返回值
逻辑型或 null 值
参数
eExpression1
指定 inlist( ) 函数要在表达式组中搜索的表达式。
eExpression2 [, eExpression3 ...]
指定要搜索的表达式组。表达式组中必须至少包含一个表达式 ( eExpression2),最多可包含 24 个。
表达式组中的所有表达式必须具有相同的数据类型。
备注
如 inlist( ) 函数在表达式组中找到了要搜索的表达式,就返回“真”(.T.);否则,返回“假”(.F.)。如果 eExpression1 为 null 值,则 inlist( ) 函数返回 null 值;如果 eExpression1 与表达式组中的任何表达式都不匹配,或者表达式组中有一个表达式为 null 值,inlist( ) 函数也返回 null 值
示例
下面的示例用 inlist( ) 函数来判断当前月份属于一年中的哪一个季度,变量 gcmonth 中存储的是当前月份。每个 case 语句利用 inlist( ) 函数来判断 gcmonth 的值是否包含在一个月份列表中,返回的季度名称保存在变量 gcreportitle 中。
SET TALK ON
STORE CMONTH(DATE()) TO gcMonth
DO CASE
CASE INLIST(gcMonth,'January','February','March')
STORE 'First Quarter' TO gcReporTitle
CASE INLIST(gcMonth,'April','May','June')
STORE 'Second Quarter' TO gcReporTitle
CASE INLIST(gcMonth,'July','August','September')
STORE 'Third Quarter' TO gcReporTitle
OTHERWISE
STORE 'Fourth Quarter' TO gcReporTitle
ENDCASE
WAIT WINDOW gcReporTitle
判断一个表达式的值是否在另外两个相同数据类型的表达式的值之间。
BETWEEN(eTestValue, eLowValue, eHighValue)
返回值
逻辑型或 Null 值
参数
eTestValue
指定 BETWEEN( ) 函数所测试的表达式。当 eTestValue 大于等于 eLowerValue 而小于等于 eHighValue 时,BETWEEN() 返回逻辑值“真”(.T.),否则返回逻辑值“假”(.F.)。如果 eLowerValue 或 eHighValue 为 Null 值,则返回 Null 值。
eLowValue
指定 BETWEEN() 计算范围的下界。
eHighValue
指定 BETWEEN() 计算范围的上界。
备注
如果一个字符型、日期型、日期时间型、数值型、浮点型、整型、双精度型或货币型表达式的值在另外两个相同数据类型表达式的值之间,BETWEEN() 就返回“真”(.T.),否则返回“假”(.F.)。如果 eLowValue 或 eHighValue 为 Null 值,则返回 Null 值。
示例
下面的示例找出 orders 表中满足条件 — order_amt 字段值在 950 和 1000 之间的所有记录,并显示这些记录的 cust_id 字段 和 order_amt 字段的内容。
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE orders && 打开 order table
CLEAR
SCAN FOR BETWEEN(order_amt,950,1000)
? cust_id, order_amt
ENDSCAN
- 2 回答
- 0 关注
- 1059 浏览
添加回答
举报