数据查询及统计.ppt_第1页
数据查询及统计.ppt_第2页
数据查询及统计.ppt_第3页
数据查询及统计.ppt_第4页
数据查询及统计.ppt_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据查询及统计,本章主要内容,单表查询 多表连接查询 嵌套查询 聚集函数 分组,数据库原理及应用,数据库中使用的表,数据库原理及应用,单表查询,单表查询 单表无条件查询 命令格式: SELECT ALL|DISTINCT TOP NPERCENT AS , AS ,. FROM 表名|视图名,数据库原理及应用,单表查询,例题一 查询全院学生的信息. SELECT * FROM STUDENT,数据库原理及应用,单表查询,单表有条件查询 命令格式: SELECT ALL|DISTINCT AS , AS,. FROM WHERE ,数据库原理及应用,单表查询,例题二 查询王坤的个人信息。 SELECT * FROM STUDENT WHERE SNAME=王坤,数据库原理及应用,单表查询,模糊查询 LIKE(模糊查询) 用法: NOT LIKE ESCAPE 其含义是查找指定的属性列值与相匹配的记录。可以是一个完整的字符串,也可以含有通配符%和_。其中: %(百分号):代表任意长度(长度可以为0)的字符串; _(下划线):代表任意单个字符。 ESCAPE 的作用是当用户要查询的字符串本身应含有%或_时,可以使用该选项对通配符进行转义。 如果LIKE后面的匹配串中不含通配符,则可以用“=”(等于)运算符取代LIKE谓词,用“!=”或“”(不等于)运算符取代NOT LIKE谓词。,数据库原理及应用,单表查询,例题三 查询姓王的学生的信息。 SELECT * FROM STUDENT WHERE SNAME LIKE 王%,数据库原理及应用,多表连接查询,多表连接查询 语句格式: SELECT ALL|DISTINCT 别名.AS ,别名.AS,. FROM 别名1, 别名2, WHERE AND ,数据库原理及应用,多表连接查询,实现根据系别查询学生的信息: 例题一 查询软件系学生的信息。 SELECT * FROM STUDENT A,CLASS B,DEPARTMENT C WHERE A.CLASSNO=B.CLASSNO AND B.DEPTNO=C.DEPTNO AND DEPTNAME=软件工程系,数据库原理及应用,多表连接查询,例题二 查询软件系2007级学生的信息。 SELECT * FROM STUDENT A,CLASS B,DEPARTMENT C WHERE A.CLASSNO=B.CLASSNO AND B.DEPTNO=C.DEPTNO AND DEPTNAME=软件工程系 AND INYEAR=2007,数据库原理及应用,多表连接查询,例题三 查询软件系2007级2班学生的信息。 SELECT * FROM STUDENT A,CLASS B,DEPARTMENT C WHERE A.CLASSNO=B.CLASSNO AND B.DEPTNO=C.DEPTNO AND DEPTNAME=软件工程系 AND INYEAR=2007 AND CLASSNAME=07软件2班,数据库原理及应用,嵌套查询,嵌套查询 在SQL语言中,一个SELECT-FROM-WHERE语句称为一个查询块。将一个查询块嵌套在另一个查询块的WHERE子句或HAVING子句的条件中称为嵌套查询或子查询。 下面给出通过嵌套查询实现上面三个例题的SQL语句。,数据库原理及应用,嵌套查询,例题一* SELECT * FROM STUDENT WHERE CLASSNO=(SELECT CLASSNO FROM CLASS WHERE DEPTNO=(SELECT DEPTNO FROM DEPARTMENT WHERE DEPTNAME=软件工程系) ),数据库原理及应用,嵌套查询,例题二* SELECT * FROM STUDENT WHERE CLASSNO=(SELECT CLASSNO FROM CLASS WHERE INYEAR=2007 AND DEPTNO=(SELECT DEPTNO FROM DEPARTMENT WHERE DEPTNAME=软件工程系) ),数据库原理及应用,嵌套查询,例题三 * SELECT * FROM STUDENT WHERE CLASSNO=(SELECT CLASSNO FROM CLASS WHERE CLASSNAME=07软件2班 AND DEPTNO=(SELECT DEPTNO FROM DEPARTMENT WHERE DEPTNAME=软件工程系) ),数据库原理及应用,聚集函数,聚集函数 SQL的聚集函数是综合信息的统计函数,也称为聚合函数或集函数,包括计数、求最大值、求最小值、求平均值和求和等。聚集函数可作为列标识符出现在SELECT子句的目标列或HAVING子句的条件中。,数据库原理及应用,聚集函数,数据库原理及应用,聚集函数,例题一 统计全院学生人数. SELECT COUNT(*) AS 全院人数 FROM STUDENT,数据库原理及应用,分组与排序,对查询结果集进行分组 (1) 命令格式:GROUP BYHAVING。 (2) 功能说明:把查询结果集中的各行按进行分组,在这些列上,对应值都相同的记录分在同一组。若无HAVING子句,则各组分别输出;若有HAVING子句,只有符合HAVING条件的组才输出。此时,SELECT子句中,只能包含两种目标列表达式:要么是聚集函数,要么是出现在GROUP BY子句中的分组字段。 当SELECT的目标列表达式清单中有聚集函数时,才使用GROUP BY子句。,数据库原理及应用,分组与排序,例题一 查询各系的总人数。 SELECT DEPTNAME 系名, COUNT(*) AS 总人数 FROM STUDENT A,CLASS B,DEPARTMENT C WHERE A.CLASSNO=B.CLASSNO AND B.DEPTNO=C.DEPTNO GROUP BY DEPTNAME,数据库原理及应用,分组与排序,例题二 统计各系各级的人数. SELECT DEPTNAME 系名, INYEAR 年级,COUNT(*) AS 总人数 FROM STUDENT A,CLASS B,DEPARTMENT C WHERE A.CLASSNO=B.CLASSNO AND B.DEPTNO=C.DEPTNO GROUP BY DEPTNAME,INYEAR,数据库原理及应用,分组与排序,例题三 统计各班的人数。 SELE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论