预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共18页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

VisualFoxPro第五章一、查询的创建和使用使用查询设计器创建查询 创建查询的方法: 使用createquery打开“查询设计器”窗口创建查询 用“文件”—“新建”/“新建”按钮打开“查询设计器” 在“项目管理器”—“数据”卡片,用“新建”按钮打开“查询设计器” 用select-SQL命令直接编写(需要达到的要求) 前三个是界面窗口操作模式,后一个是真正的命令格式用一个例子来说明查询设计器要怎样使用例1:找出CJ表中成绩大于80分的记录 学习的要求: 会使用设计器来创建查询 要脱离设计器直接用SELECT命令构造 基本步骤: 根据给出的要求判断需要使用到哪几张表,审视这些表,判断出联接条件 打开设计器,添加表,设定联接条件 设定查询的输出内容 设定查询的筛选条件 设定查询的排序依据 设定分组依据:例2查询每个学生的总分、均分 设定查询结果的输出类型 运行查询分组依据: 分组:对表中记录取重复值的记录进行压缩,形成一个结果记录,以完成基于一组记录的计算或统计 选中“分组依据”卡片,设定分组字段 注意:由分组定义可以知道,只有当选定输出内容时用到了计算的情况下才需要进行分组;若要对分组的查询结果进行筛选,则需要使用“满足条件”按钮。多表查询的一些基本概念 联接: 联接定义:指查询或视图的一个数据库操作;两张表联接的结果是一张新表。通过比较指定字段的值联接2张或多张表(视图)中的记录,字段相同的记录形成一张新表 联接条件:在联接产生新记录时,必须限定在符合什么条件时,才构成一个新记录,所谓联接条件便是这样的限定条件 联接的原因:减少数据的冗余P117 联接的类型:内联接,左联接,右联接,完全联接P117表4-2多表查询的创建:步骤例题 若有2张以上的表,在添加时一定要注意先后次序,“纽带表”要放在两张“父表”之间 若已进行了永久性关系的设置,则无须进行联接 修改联接条件可在“查询设计器”—“联接”卡片中进行 联接条件和筛选条件类似,都是选出符合条件的记录;不同的是筛选是将字段值和筛选值进行比较,而联接条件是将一张表中的字段值与另外一张表中的字段值进行比较 查询时会考到的最难的程度如下例: 查询信息管理系中所有成绩在480分以上,并且各门课程的成绩不低于70分的学生。要求在查询的结果中包含学号,姓名,总分,均分,最低分,并按照总分从高到底排列一部分查询的练习 查询学生的学号,姓名,系名,总分和平均分,按照系名升序排序,同一个系的学生按照总分降序排序。 查询每个系每门课程的总分和平均分,要求输出课程名,课程代号,系名,每个系的平均成绩和总成绩,按课程代号升序排序 查询各个系每位教师的课时数,要求输出系名,工号,姓名,课时数,并按系名升序排序,同一个系的教师按照工号升序排序 查询计算机科学系各位教师的课时数,要求输出工号,姓名,系名,课时数,并按工号降序排序,并且将查询信息保存为表,表名为:jsjkxkss.dbf交叉表查询:要求会用向导来建立 如同EXCEL中的数据透视表,可以综合多种条件,方便直观的显示表中的数据,可利用“查询向导”来建立交叉表查询 选中“查询”—“新建”—“查询向导”—“交叉表查询” 选取相应的表和字段 定义布局:行和列分别放置哪些字段 加入总结信息 选择保存类型二、视图的创建和使用三、SELECT-SQL语句 查询的本质:SELECT-SQL命令 SELECT-SQL: 利用查询/视图设计器构造查询的本质就是最后生成一条SELECT-SQL命令 SELECT-SQL命令的格式:P121 SELECT[all|distinct][topn]字段 FROM表1INNER|LEFT|RIGHT|FULLJION表2… INTO…|TO… WHERE字段筛选表达式 GROUPBY分组条件 HAVING对分组计算的结果进行筛选 UNION连接另外一个查询的结果 ORDERBY排序依据SELECT-SQL应用举例:P124~P126 SELECT-SQL语句可以在命令窗口中输入,但若要将做好的SELECT语句保存下来,就要打开一个程序编辑窗口在其中进行编辑(如同编辑一个程序) 单张表查询(最简单的一种)例4.4~4.6 基于多张表的查询(最常见)例4.7~4.8 含有计算字段的查询(使用分组)例4.9~4.10 基于视图的查询补例 子查询(查询的嵌套)例4.11 组合查询(多个查询的连接)例4.12~4.13 一部分查询的练习 查询各个系男生的总分和平均分,要求输出系名,性别,总分和平均分 查询选修“中文WINDOWS95”课程并且成绩合格(>=60)的学生名单,输出姓名,成绩,课程名,按成绩降序排列 查询各个学生选修课程的门数及平均分,要求输出学号,姓名,课程数和平均分 查询每门课程的选修人数及平均分,按KCDH升序排