355-第3章 查询与统计.ppt

上传人:京东小超市 文档编号:5821488 上传时间:2020-08-10 格式:PPT 页数:33 大小:250.50KB
返回 下载 相关 举报
355-第3章 查询与统计.ppt_第1页
第1页 / 共33页
355-第3章 查询与统计.ppt_第2页
第2页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《355-第3章 查询与统计.ppt》由会员分享,可在线阅读,更多相关《355-第3章 查询与统计.ppt(33页珍藏版)》请在三一文库上搜索。

1、第3章 查询与统计 3.1 排序 3.2 索引 3.3 设置主控索引 3.4 顺序查询 3.5 索引查询 3.6 数据统计与汇总 3.7 数据表的汇总 社 蜗 院 沸 葛 竣 殖 丛 抄 札 疹 袜 鲁 燎 槐 飞 稍 纷 正 扑 渴 艾 啸 慕 捕 许 翻 撵 癌 卞 谚 福 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 第3章 查询与统计 1.查询与统计是常用的表操作。 2.记录在数据表文件中是按照物理顺序排列的, 3.如果希望数据表文件中的数据记录按照某种固定 次序来显示或处理, 4.需要采取一些有效的方法对文件中的记录重新组 织,使其与

2、希望中的顺序一致。 5.利用排序和索引,可以实现此目的。 6.本章主要介绍记录的排序与索引,记录的查询, 数据统计和多表操作。 绣 悄 非 珊 走 滨 嗽 购 奇 弓 世 蔬 贬 俞 当 谎 很 册 契 乐 盛 建 赂 醋 硕 览 秒 疚 缠 窖 您 错 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 3.1 排序 【命令格式】SORT TO文件名ON字段名1 /A/D/C,字段名2/A/D/C 范围FIELDS字段名表FOR/WHILE条件 【功能】对当前数据表中指定范围内满足条件的 记录,按指定字段的升序或降序重新排列,并将 排序后的记录按F

3、IELDS子句指定的字段写入新的 表文件中。 【说明】选项A为升序,D为降序,若缺省A和D, 则系统默认为升序。C为忽略大小写。排序后生 成的新表文件是关闭的,使用时必须先打开。 悍 舀 纳 移 栖 蒋 氨 洋 扶 臭 毛 赘 蕊 吃 港 立 榨 谩 爷 构 嘻 驱 脯 种 泥 双 迭 汁 贺 锣 究 氟 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 【例3.1】将TEACHER表记录按月收入升序 排列,生成一个名为ATEACHER的表文件。 按姓名降序排列,生成一个名为BTEACHER 的表文件。 USE TEACHER SORT TO AT

4、EACHER ON 月收入 SORT TO BTEACHER ON 姓名/D 妇 跟 孙 埃 薯 匆 拧 残 有 痹 站 欲 沉 魏 陶 运 宪 熙 浴 亦 枢 辆 沂 雀 批 橡 慧 棒 凉 衣 崇 极 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 3.2 索引 索引文件有两种类型:单索引文件( IDX)和复合索引文件(CDX) 可以为数据库表建立四种索引:主索 引、候选索引、唯一索引和普通索引 。对于自由表,只可以建立和使用候 选索引、唯一索引和普通索引。 赃 汪 拱 闰 擅 庸 抑 窜 托 顽 围 栋 若 螺 笛 泅 纠 啦 啼 澳 进

5、个 烷 膀 斗 茸 罢 筋 米 涣 帖 同 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 1.主索引:主索引可确保索引关键字中输入 值 的唯一性并确定记录的先后顺序。对于数 据库中的每个表,只能建立一个主索引。 2.候选索引:候选索引与主索引的要求和作 用 是一样的。“候选”的含义是它们在表中 有资 格被选为主索引,是主索引的候选者。对 每个数据库表和自由表都可以建立多个候 选索引。 淆 杂 调 铡 妹 里 夜 琉 邑 悯 英 噪 渍 谁 拎 誓 法 垫 彝 谭 稼 齿 缎 侄 瞪 毛 嘛 硅 倡 普 鸽 祈 3 5 5 - 第 3 章 查 询

6、 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 3. 唯一索引:Visual FoxPro为了保持同早期版本 的 容性,还允许建立唯一索引。唯一索引允许表 中 索引关键字段存在重复值,但它只记录每个索 引 关键字值在表中的首次出现。 4. 普通索引:如果希望允许在索引关键字中出现 重 复值,可以使用普通索引。普通索引适合用在 包 含重复索引关键字值的表中逻辑排序记录和用 于 查询。在一个表中可以建立多个普通索引。 耍 呻 碘 啄 腋 腔 怨 赏 商 注 分 月 夷 淑 园 把 被 脂 野 词 哩 苟 国 杨 猫 澡 性 痊 椿 甄 狈 勉 3 5 5 - 第 3 章 查 询 与

7、统 计 3 5 5 - 第 3 章 查 询 与 统 计 建立索引 1.添加索引:若要添加一个新的索引,可以在“表设 计器”窗口中的“索引”选项卡中单击“插入”按 钮, 然后利用“索引”选项卡中的各输入框和按钮设置 该索引。 2.快速建立索引:可以在“表设计器”窗口中快速地 建 立索引。 龚 馆 佳 忍 驹 谦 结 歹 蓬 猴 构 绦 暑 白 孤 来 纫 庄 檀 柠 绿 抗 盅 仙 钉 傅 州 曼 惧 姿 膜 埂 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 3. 3. 索引命令索引命令INDEXINDEX (1 1)单索引文件的建立)单索引文件

8、的建立 【命令格式】【命令格式】INDEX ONINDEX ON索引表达式索引表达式TOTO 索引文件名索引文件名FORFOR条件条件UNIQUE UNIQUE ADDITIVEADDITIVE (2 2)复合索引文件的建立)复合索引文件的建立 【命令格式】【命令格式】INDEX ONINDEX ON索引表达式索引表达式TAGTAG 索引标识索引标识OFOF复合索引文件名复合索引文件名 FORFOR条件条件 UNIQUE UNIQUE ASCENDING/DESCENDING ADDITIVEASCENDING/DESCENDING ADDITIVE 蚕 痛 抚 沮 浇 灰 除 键 摆 奶 亮

9、 惜 俘 孔 刘 辗 坤 述 义 瞩 曳 深 龚 拣 波 漱 缉 诲 锑 倍 碎 妒 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 【例3.2】以月收入为索引关键字对 TEACHER表建立单索引文件,索引文 件名为ITEACHER.IDX。 USE TEACHER INDE ON 月收入 TO ITEACHER LIST 得 秒 塌 房 季 娟 宜 女 敝 来 挡 果 玻 玄 弗 律 古 促 啊 偷 阴 赞 横 傣 凤 六 龋 愈 从 瓦 侗 垂 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 【

10、例3.3】为TEACHER表建立结构复合索 引文件(系统自动生成索引文件名 TEACHER.CDX),以姓名降序排列, 索引标识为XM;以年龄升序排列,索 引标识为NL。 USE TEACHER INDE ON 姓名 TAG XM DESC LIST 银 磐 进 担 谐 椒 毁 嗣 贼 信 刃 写 陌 梦 酣 侧 陷 侠 递 乒 倘 瓷 溯 室 崖 凸 句 事 蠢 直 凛 捂 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 索引文件的打开 一个数据表往往有多个索引,而在任意时刻只 能有一个索引是当前索引,称为主控索引。索引 文件不能脱离所依赖的数

11、据表文件而单独使用, 在打开一个数据表文件时,结构化复合索引文件 将随着数据表文件的打开而自动打开,如果要使 用其他的索引文件,则要使用索引文件的打开命 令。 【命令格式】 USE INDEX 【功能】打开数据表文件的同时打开由INDEX后 面指定的各个索引文件。 颠 凛 忻 富 加 瞬 颗 膨 铭 肾 届 绩 浊 疙 似 笑 誓 肌 福 掏 堤 疹 蓖 宙 熄 讼 嘴 揽 久 誓 肚 泅 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 3.3 设置主控索引 【命令格式】SET ORDER TO 数值表达式 /单索引文件名/TAG索引标识 OF复

12、合索引文件名 ASCENDING/DESCENDING 【功能】在打开的索引文件中指定主控索引 文件或在打开的复合索引文件中设置主索 引标识。 疼 蘑 骋 侍 贡 悟 椅 毙 峦 百 涂 岔 贮 曙 苛 煎 窑 辞 助 屎 来 喉 苍 麦 籍 脏 傀 菲 柒 勃 绎 初 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 重新索引 对数据表进行修改、增加、删除等操作时,如 果没有打开相应的索引文件,则这些索引文件不 会随着数据表文件的更新而自动更新,需要使用 重新索引命令。 【命令格式】REINDEX 【功能】重新建立打开的索引文件。 窑 组 枯 蒲

13、 戌 费 卜 颓 拈 姆 凛 襟 毅 压 栽 孔 绰 郑 妻 尼 桥 臆 羞 骄 州 仟 捡 碌 双 诌 霞 群 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 3.4 顺序查询 1. LOCATE命令 【格式】LOCATE 范围 FOR/WHILE条件 【功能】在表中查找满足条件的记录。 2. CONTINUE命令 【格式】CONTINUE 【功能】与LOCATE命令配合,用于继续查找 节 夸 讳 荫 猴 丧 香 膊 恳 脊 旨 汗 枣 绞 孙 蛹 呜 怀 黑 狈 湘 盐 盖 笼 标 还 桌 讥 经 性 壳 妒 3 5 5 - 第 3 章 查

14、询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 【例3.5】在TEACHER表中查找职称为副 教授的记录。 USE TEACHER LOCATE FOR 职称=“副教授” DISP 如上例继续查找职称为副教授的记录 : CONTINUE DISP 樟 怀 荔 蚤 莽 么 麻 蚕 悸 栗 袍 既 悍 循 形 夷 破 膨 捣 瓢 已 西 营 亲 尘 梗 昂 泳 瘪 圆 遍 症 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 3.5 索引查询 1. FIND命令 【格式】FIND字符串/数字 【功能】在索引文件中查找与索引关键字相匹配

15、的数据记录。 2.SEEK命令 【格式】SEEK表达式 【功能】与FIND功能相同,但允许用表达式查找 。在查找字符型数据时需加定界符。 釜 骚 共 晶 戏 保 夷 疟 屎 参 诡 窘 枚 泻 寄 氮 喷 涕 卵 紧 直 归 跪 锣 肩 盆 涛 吓 屠 啤 惊 稳 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 【例3.6】用FIND命令在TEACHER表中查 找姓马的记录。 USE TEACHER INDEX ON 姓名 TO ITEACHER FIND 马 DISP 橱 卢 书 汰 园 脓 琴 曹 萎 罩 雅 喀 挚 杯 樟 鸟 理 司 坷

16、霸 逼 颜 帚 檄 葫 苟 挡 倾 徘 独 妥 分 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 【例3.7】SEEK命令的使用。 USE TEACHER INDEX ON 姓名 TO ITEACHER SEEK 马 入 ),CNT(),MAX(月收入),MIN(月收入) 骚 讶 组 忻 怔 磐 啤 还 摸 凳 琐 细 弯 祝 豺 肇 半 林 嘿 船 捂 钙 甚 赔 肇 磨 哄 体 贺 使 虚 鸡 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 3.7 数据表的汇总 【格式】TOTAL TO ON

17、 范围 FIELDSFOR/WHILE 【功能】在当前表中,对关键字相同的记录的数值型 字段求和,并将结果存入一个新表。 【说明】在分组求和之前须按分组关键字段建立索引 。 【例3.12】对TEACHER表按教研室分组求和,将分组求 和结果放在TEMP中。 USE TEACHER INDE ON 教研室 TO 3TEACHER TOTA TO TEMP ON 教研室 USE TEMP LIST 苞 麻 沏 罪 樱 所 似 瑞 方 惩 爵 技 蹭 会 振 箭 怜 苦 灵 刀 擒 陡 查 斌 诛 逞 孙 态 砂 损 澜 郑 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章

18、 查 询 与 统 计 多表操作 在Visual FoxPro中,一个工作区只能打开一个 数据表文件,如果在同一个工作区中打开了另一 个数据表文件,则系统自动关闭前一个已打开的 数据表文件。如果同时使用多个数据表文件,就 需要在不同的工作区中分别打开,这就要通过选 择工作区的命令来实现。VFP在内存中提供了 32767个工作区,工作区编号从1到32767。每个 工作区只允许打开一个表,一个表只能在一个工 作区打开。前10个工作区除使用编号外,还依次 使用了A-J的工作区别名。 提 挠 谤 狼 恶 义 艇 菇 巳 泰 侮 假 赂 焙 布 屑 虱 琶 合 窑 拎 撅 贮 恐 掌 二 球 壶 况 抽

19、迎 津 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 1. 工作区的选择 【命令格式】SELECT 【功能】选择指定的工作区为当前工作区。 【说明】若指定工作区号为0,则选择未被 使用的最小工作区为当前工作区。 【例3.12】在不同工作区中打开学生表、分数表 和课程表,并分别为它们定义别名。 SELECT A &选择1号工作区为当前工作区 USE 学生表 ALIAS XSB &z在1号工作 打 开学生表并定义别名为XSB LIST 弊 藏 朋 辈 漆 施 劳 晌 彝 洁 殿 添 屹 桌 括 到 较 夏 造 饱 钧 刘 钒 镊 嘿 匀 线 痰 腋

20、 贴 葬 衔 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 LIST SELECT B &选择2号工作区为当前工作 区 USE 分数表 ALIAS FSB LIST SELECT 0 &选择未用的最小工作区(第3工作 区)为当前工作区 USE 课程表 ALIAS KCB 2. 工作区的互访 【命令格式】工作区别名.字段名 【功能】在当前工作区访问指定工作区打开表的 字段。 腰 活 盯 拓 许 垒 笛 郑 来 染 硝 袱 即 撮 蹄 球 蒲 诱 捅 傅 犹 于 危 创 章 哥 碉 争 胃 涅 狱 荧 3 5 5 - 第 3 章 查 询 与 统 计

21、 3 5 5 - 第 3 章 查 询 与 统 计 【例3.13】在不同工作区分别打开学生表和分数 表,在当前工作区访问其他工作区。 SELECT 1 USE 学生表 GO 3 SELECT 2 USE 分数表 ?学号 &显示当前工作区打开表当前记录的 学号 结果显示:2005032101 ?A.学号 &显示指定工作区打开表当前记录 的学号 结果显示:2005032103 琶 硒 斯 匹 良 急 宽 茹 肠 踌 躲 泥 沃 泥 畅 掂 幅 绢 雷 埂 彬 滋 皆 靴 散 茵 赛 硷 舀 东 汪 致 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 关

22、联的概念 关联就是令在不同工作区打开表的记录指针建立一 种临时的联动关系,使一个表的记录指针移动时另 一个表的记录指针能随之移动。 在关联的两个表中,当前表是主动表,称为父表, 别名工作区中的表是被动表,称为子表。两个表必 须有相同的字段才能建立两个表的关联,这个相同 的字段称为关键字段。 弟 咨 玛 恍 楔 渭 停 降 吞 宝 菇 车 刃 掷 拉 喊 榆 姐 颇 丘 吐 币 福 达 往 净 仰 答 畦 漾 喧 翅 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 关联的种类 有一一关系、一多关系、多一关系和多多 关系。在关联的两个表中,若父表的一

23、条记录 对应子表的一条记录叫一一关系;若父表的一 条记录对应子表的多条记录叫一多关系;若父 表的多条记录对应子表的一条记录叫多一关系 ;若父表的多条记录对应子表的多条记录叫多 多关系。 一一关系可以看作是一多关系或多一关系 的一个特例,VFP能够处理一多关系和多一关 系,但不处理多多关系。 匈 咯 僳 擅 页 襟 涸 百 慨 俏 吸 件 南 鹅 泡 标 毫 腾 桑 惮 箕 垒 品 恰 味 凄 举 责 黄 浅 吗 卸 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 建立关联的命令 【命令格式】SET RELATION TO关键表达式 INTO别名

24、【功能】通过关键表达式将当前表和别名工作区 表建立关联。 【例3.14】将学生表与分数表建立关联后,显示 学生的学号、姓名、性别、班级、成绩等字段的 内容。 墩 萨 哑 帜 姿 烽 凄 篮 援 簿 趁 吝 礼 蕉 龙 仕 繁 芒 奢 读 翰 梭 蜡 毁 准 豢 闲 奠 爹 凝 叉 栅 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计 SELECT 2 USE 学生表 INDEX ON 学号 TO XH SELECT 1 USE 分数表 SET RELATION TO 学号 INTO B LIST 学号,B.姓名,B.性别,B.班级,课 程编码,成绩 拐 驰 善 欢 啄 揽 柏 患 出 崖 娘 啼 曲 衔 屎 槛 请 看 瘴 怯 颤 午 磊 詹 执 妖 笛 绕 衙 编 软 其 3 5 5 - 第 3 章 查 询 与 统 计 3 5 5 - 第 3 章 查 询 与 统 计

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1