数据库第三章查询与统计1.pptVIP

  • 2
  • 0
  • 约7.52千字
  • 约 62页
  • 2018-05-04 发布于四川
  • 举报
3.3 查询命令 一.顺序查询命令 命令格式:LOCATE FOR 条件 [范围] 功 能: 搜索满足条件的第一个记录。若找到,记录指针就指向该记录;若表中无此记录,搜索后在状态条中将显示“已到定位范围末尾”,表示记录指针指向文件结束处。此时EOF()=.T. FOUND():若找到满足条件的记录返回.T. 命令格式: CONTINUE 功 能: 继续往下查找满足条件的记录。 例1:找出1990年以后使用的 非主要设备 USE SB LOCATE FOR YEAR(启用日;期)=1990 AND NOT 主要设备 DISP ?FOUND() CONT DISP CONT ?EOF() 例2:统计主要设备的总价格。 USE SB SS=0 LOCATE FOR 主要设备 DO WHILE NOT EOF() SS=SS+价格 CONT ENDDO ?”总价格=”,SS USE 查询命令(续) 二.索引查询命令 索引查询是对有序表的查询,可以采用二分查找法。查 找的速度很快。 命令格式:SEEK 表达式 功 能: 在已确定主控索引的表中按索引关键字搜索满足表达式值的第一个记录. 若找到,记录指针就指向该记录;若表中无此记录,搜索后在状态条中将显示“已到定位范围末尾”,表示记录指针指向文件结束处。EOF()=.T. 例1: USE SB INDEX ON 部门 TAG BM SEEK “11” 不可写为部门=“11” ?FOUND() DISP 三.其它 1.FOUND()函数:使用以上命令查询数据时,若查到, FOUND()=.T.;否则FOUND()=.F.。 2.模糊/精确查询 模糊查询命令格式:SET EXACT OFF 功能:只要字符表达式值与索引关键字值左子串相同,就 认为相同。默认状态。 精确查询命令格式:SET EXACT ON 功能:只有字符表达式值与索引关键字值完全匹配时,认 为相同。 查询命令(续) 例1:USE SB SET ORDER TO TAG BH SEEK 016 按编号的前三个字符查找 ?FOUND() 模糊查询,返回.T. DISP SET EXACT ON 设置精确查询,完全比较 SEEK 016 ?FOUND() ?EOF() 3.4 统计命令 一.计数命令 命令格式: COUNT[范围][FOR条件][TO内存变量] 功 能: 计算指定范围内满足条件的记录数. 说 明: 统计出的记录数显示在状态条中, TO内存变 量将记录数保存到内存变量。 缺省范围子句时,默认值为ALL。 例1: 统计主要设备和非主要设备的台数。 USE SB COUNT TO A FOR 主要设备 ?A COUNT TO B FOR NOT主要设备 ?B 二.求和命令 命令格式:SUM[数值表达式表][范围][FOR条件 1][TO内存变量表|ARRAY数组] 功 能: 在打开的表中,对数值表达式表的各个表达 式分别求和。 说 明:数值表达式表中各表达式的和依次存入内存 变量表或数组。若缺省该表达式表,则对当前表 所有的数值型字段求和。 例1: 统计主要设备的总价格。 USE SB SUM 价格 FOR 主要设备 TO A ?A 三.求平均值命令 命令格式:AVERAGE[数值表达式表][范围][FOR条件1][TO内存变量表|ARRAY数组] 功 能:在打开的表中,对数值表达式表的各个表 达式分别求平均值。 四.计算命令 命令格式:CALCULATE表达式表[范围][FOR 条件1][TO内存变量表|ARRAY数组] 功 能:在打开的表中,分别计算表达式表的表达 式。对表中的字段进行财经统计。 说 明: AVG() CNT() 表达式的组成 MAX() 例:见书89页 MIN()

文档评论(0)

1亿VIP精品文档

相关文档