第五章 关系数据库标准语言SQL
5.1 SQL概述
SQL是结构化查询语言
STRCTURE QUERY LANGURAGE 1.简介
? SQL--Structured Query Language(结构化查询语言)
? SQL语言已经成为关系数据库通用的查询语言,几乎所有的关系数据库系统都支持它。 ? SQL语言功能:数据定义、数据控制、数据操纵和数据查询功能,其中最重要的是数据查询功能。
? 数据库的所有操作都可以通过SQL语言来完成
表5-1 SQL命令动词
SQL功能 数据查询 数据定义 数据操纵 数据控制
命令动词 SELECT CREATE,DROP,ALTER INSERT,UPDATE,DELETE GRANT,REVOKE 2.特点
? 两种使用方式:既可以直接以命令方式交互使用,也可以嵌入到程序设计语言中以程序方式使用。
? 高度非过程化:只需要描述清楚用户要“做什么”,SQL语言就可以将要求交给系统,自动完成全部工作。 ? 语言简洁,易学易用。
5.2 查询功能
1. SQL 的核心是查询。
SQL的查询命令也称为SELECT命令,它的基本形式由SELECT-FROM-WHERE查询块组成,多个查询块可以嵌套执行。 2. SELECT命令的语法格式(P77) (1) 其中主要短语的含义如下: SELECT :说明要显示查询的数据字段 FROM:说明要查询的数据来自哪个或哪些表 WHERE:说明查询条件,即选择元组的条件 JOIN:指定多个表之间的联接
GROUP BY:对查询结果进行分组,可以利
用它进行分组汇总
HAVING:必须跟随GROUP BY,它用来
限定分组必须满足的条件
ORDER BY: 对查询结果进行排序
注意:只有SELECT和FROM是命令的必需部分
(2) 查询例子(以下查询例子都是采用bookinfo,readerinfo,borrowreturninfo,bookcategory数据表)p79—p80 5.2.1简单查询
简单查询是从一个表中查询某些列的信息。 ? 由SELECT和FROM短语构成的无条件查询 ? 基于单个表
? 或由SELECT、FROM和WHERE短语构成的条件查询
[例子5.1]在readerinfo表中查询所有读者信息。
其中“ * ”是通配符,表示所有属性,即字段。
[练习5.1] 在bookinfo表中查询所有图书信息。 [例子5.2]在readerinfo表中查询读者所在院系。
[练习5.2] 在bookinfo表中查询所有出版社信息。 [例子5.3]在readerinfo表中查询读者所在院系,并去掉重复值。
[练习5.3] 在bookinfo表中查询所有出版社信息,并去掉重复值。 [例子5.4] 在readerinfo表中查询所有读者的姓名、性别和年龄。
[练习5.4] 在bookinfo表中查询所有图书名称,作者和出版年限。