- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第13章 查询与视图 13.1 使用查询设计器创建查询 13.2 使用SQL语言的SELECT语句创建查询 13.3 创建视图 13.4 查询视图 查询就是向一个数据库发出检索信息的请求,从中提取符合特定要求的记录。 利用查询可以实现对数据库中数据的浏览、筛选、排序、检索、统计及加工等操作。 查询文件的扩展名为.qpr,查询被运行后,系统会生成一个编译后的查询文件,扩展名为.qpx。 运行查询文件可以得到一个基于表和视图的数据集合,查询结果可以用不同的形式来保存,查询结果中的数据是只读的。 创建查询的方法: 使用查询向导 使用查询设计器 使用查询命令(SQL语言的SELECT语句) 创建查询文件可实现如下查询要求: 单表查询 多表连接查询 查询所选字段 查询所选记录 查询表达式的值 对查询结果进行排序 分组进行查询并计算每组的统计数据 对组进行筛选 指定查询输出的去向 在查询中删除重复记录 查询一定数目或一定百分比的记录 13.1 使用查询设计器创建查询 举例: 1.查询“计算机”系的学生的学号、姓名、和出生日期,结果按学号升序排。 2.查询“计算机”系的学生的姓名、性别、年龄,结果按年龄升序排。 3.查询都有哪些系,要求系不能重复。 4.查询选了“001”号课的学生的姓名和成绩,结果按成绩降序排,结果放到表‘成绩001号课’表中。 5.查询“计算机”系学生选了“001”号课学生的姓名、成绩,结果按成绩降序排。 6.查询成绩在80及80分以上的学生的姓名、课程名和成绩,输出时先按课程名升序排,课程名一样的再按成绩降序排。 7.查询平均成绩大于等于80的学生的学号、姓名平均成绩。 8.查询各科成绩的最高分。结果包括课程名和最高分两列。 9.查询选课人数多于10人的课程名和选课人数。 10.查询数学成绩前5名的学生的姓名和数学成绩。 13.2 使用SQL语言的SELECT语句创建查询 【语句格式】 SELECT [ALL|DISTINCT] 目标列表达式 [,目标列表达式] … FROM 表名或视图名[, 表名或视图名 ] … [ WHERE 条件表达式 ] [ GROUP BY 列名1 [ HAVING 条件表达式 ] ] [ ORDER BY 列名2 [ ASC|DESC ] ] 其中: SELECT子句:指定要显示的属性列 FROM子句:指定查询对象(基本表或视图) WHERE子句:指定查询条件 GROUP BY子句:对查询结果按指定列的值分组,该属性列值相等的元组为一个组。通常会在每组中作用集函数。 HAVING短语:筛选出只有满足指定条件的组 ORDER BY子句:对查询结果表按指定列值的升序或降序排序 表间的联接方式:内联接、左联接、右联接和全联接。 ①内联接:INNER JOIN,只有两个表中都满足联接条件的记录才拼接。 ②左联接:LEFT JOIN,是将左表中的记录分别与右表中的记录进行联接,满足联接条件就进行拼接,不满足条件时,右表字段为NULL值。 ③右联接:RIGHT JOIN,是将右表中的记录分别与左表中的记录进行联接,满足联接条件就进行拼接,不满足条件时,左表字段为NULL值。 ④全联接:FULL JOIN,是将两个表先进行一次左联接, 再进行一次右联接,然后去掉重复记录的结果。 13.3 创建视图 在数据库中可以独立存在的表称为基本表。 而视图则是从一个或多个基本表或视图中导出的虚拟表,视图中显示的数据是基于基本表的数据,即在视图中看到的数据实际存储在基本表中,在数据库中只是存放视图的定义。视图是查看或使用基本表中部分数据的一个窗口。 视图不以独立的文件形式保存,视图的定义存储在数据库中。 视图的数据源可以是自由表、数据库表或另一个视图。 视图中看到的数据可以更新。更新视图中的数据实际是更新基本表中的数据,因为这些数据实际在基本表中。 VFP的视图分为本地视图和远程视图两种。 本地视图所能更新的源表是VFP的数据库表或自由表,这些数据库表或自由表未被放在服务器上,称这些数据库表或自由表为本地表。 远程视图所能更新的源表可以来自放在服务器上的VFP的数据库表或自由表,也可以来自远程数据源。 视图可以增强数据的安全性,简化数据的操作。 本地视图的创建方法: 1.使用视图向导建立本地视图 2.使用视图设计器创建本地视图 3.用命令方式创建本地视图 【格式】 CREATE VIEW [视图名] [AS SQL-SELECT语句] 【功能】 在打开数据库的前提下创建视图。 【举例】 1. 建立“数学”系学生的视图“数学系学生”,要求只可对姓名和是否班干部进行修改,记录按学号升序
文档评论(0)