VFP 第4章 --郁洪波课品.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章 查询和视图 淮海工学院计算机系 郁洪波 问题:为什么要使用查询? 就目前所学的知识, 如何在学生表中找到姓名为“张三”的学生的籍贯信息? 如果表中的记录有上万条, 怎么找? 假如要查找“张三” 的所有课程的成绩,怎么办? 假如要查找“张三” 的所有课程的平均分和总分,怎么办? 查询的定义和本质 定义:所谓 “查询”,是指向一个数据库发出的检索信息的请求,它使用一些条件提取特定的记录。 本质:一个查询就是一条SELECT-SQL语句。 查询的结果是一个动态的数据集合。 查询的数据源可以是单张表也可以是多张表,(多张表之间必须是相关联的)以及视图 创建查询的四种方法 Create query命令方式 文件?新建 项目管理器(用得较多,上机必考) 直接写select-SQL语句。 一个简单的单表查询的例子 例题1:要求检索出学生表中所有学生的信息,并按照年龄由小到大排序。 几个选项卡的说明: 输出字段: 字段别名的使用 排序依据: 杂项: 筛选: 输入实例时的注意事项 (P113) 自己考虑以下查询如何设置? 1:查询出籍贯不是江苏的所有学生。 2:查询出籍贯不是江苏的所有男学生的信息。 3:查询出籍贯是上海或北京的所有学生 查询文件的详细内容 保存新建的查询文件后会生成后缀名.qpr的文件 文件内容为一条select-sql 语句,例如: SELECT Xs.xh, Xs.xm, Xs.xb, Xs.jg, Xs.csrq FROM sjk!xs WHERE Xs.jg 江苏 ORDER BY Xs.csrq 运行查询使用DO 命令,例如 DO *.qpr 注意:必须加上扩展名 查询结果的输出去向:默认为浏览窗口。 创建多表查询 例题2:显示每位同学的所有课程的成绩,要求每个人的成绩按照课程代号排序. 多表之间的连接类型: 内连接 (inner-join):用得最多。 左联接 (left-join) 右连接 (right-join) 完全连接 (full-join) 若两张表是一对多关系,一般主表在左,子表在右。 对查询使用分组命令 目前为止,查询产生的所有数据都直接来自数据库,这也是最基本的应用类型。 查询也可以对原始数据进行统计分析等操作产生新的数据。例如使用count(),sum()和avg()函数分别进行计数,求和以及求平均值计算。 分组举例 例题3:统计每个同学所有课程的平均成绩。并按照平均分由小到大排序。结果应如下图所示。 分组举例 所谓分组,就是对表中记录取重复值的多条记录进行压缩,形成一条结果记录,以完成基于一组纪录的计算或统计。 分组举例 进行实际操作。选择分组依据选项卡,对xh字段进行分组。 查看sql语句,分组的关键字为GROUP BY 特别注意:分组依据中有一个“满足条件” 选项,关键字是“HAVING”。它和筛选条件(“where”)有何区别? 分组字段不一定是已选定输出的字段,但分组字段不能是计算字段。一般来说,分组字段是输出的第一个字段。 分组举例 例题5:查询教师表中每个系教师的人数,工资总额和平均工资,并按平均工资降序排列。查询输出中必须包含系名,系人数,工资总额和平均工资四个列。 分析步骤: 1.包含几张表 (添加顺序如何确定?) 2.确定分组字段 (小窍门) 3.人数,工资总额,平均工资的表达式怎么写? 4.开始设计 常用的输出字段表达式的写法 Count(*) as 总人数 Sum(iif(xb=“男”,1,0)) as 男生人数 Sum(iif(xb=“男”,1,0))/count(*) as 男生比例 Sum(iif(cj=60),xf,0) as 总学分 Sum(iif(cj=60,1,0))/count(*) as 及格率 Sum(iif((year(date())-year(csrq))40,1,0)) as 四十岁以上教师人数 5.2 视图的使用 视图(view)和查询都是定义一条select-SQL语句,从数据库中提取数据。但查询得到的是只读的结果集。而视图得到的结果集可以修改,并反馈到源数据表中。 创建视图的方法: 视图设计器 CREATE VIEW命令 视图的使用:USE 命令 创建好的视图不以单独的文件形式存在。 5.3 SELECT-SQL语句 SQL(Structured Query Language,结构化查询语言),是绝大多数数据库都支持的语言,除了查询外还可以实现其它功能。 SQL语句包括以下几类: Select-SQL 查询 Alter –SQL 修改表结构 Create table –SQL 创建表 Delete –SQL 删除记录 Insert –SQL 追加新记录 Update –S

文档评论(0)

jsntrgzxy01 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档