1 / 16

本章学习线索: SQL 是什么(与关系数据库) SQL 如何定义表:建立、删除、修改 SQL 如何操作记录:增、删、改 怎么用 SELECT 查询表中的记录 查询结果如何处理-去向

第四章 关系数据库标准语言 SQL. 本章学习线索: SQL 是什么(与关系数据库) SQL 如何定义表:建立、删除、修改 SQL 如何操作记录:增、删、改 怎么用 SELECT 查询表中的记录 查询结果如何处理-去向 如使用工具 ( 向导、设计器 ) 来帮助建立 SQL 命令 查询与视图的使用-自学. 第四章 关系数据库标准语言 SQL 及数据查询.

toni
Download Presentation

本章学习线索: SQL 是什么(与关系数据库) SQL 如何定义表:建立、删除、修改 SQL 如何操作记录:增、删、改 怎么用 SELECT 查询表中的记录 查询结果如何处理-去向

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第四章 关系数据库标准语言SQL • 本章学习线索: • SQL是什么(与关系数据库) • SQL如何定义表:建立、删除、修改 • SQL如何操作记录:增、删、改 • 怎么用SELECT查询表中的记录 • 查询结果如何处理-去向 • 如使用工具(向导、设计器)来帮助建立SQL命令 • 查询与视图的使用-自学

  2. 第四章 关系数据库标准语言SQL及数据查询 1.学习目标 * 掌握SQL语言的基本功能 * 使用SQL语言产生和修改数据库表 * 使用SQL语言操纵数据库数据2.学习指南 * 通过档案表、课程表、选课表练习各种SQL语句操作 * 完成P127习题四1~9题,并将对应的SQL操作语句 保留在一个文件中,作为作业提交。3.难点重点 * 掌握SQL语句的各种基本操作语句的格式和使用方法 , 包括带有各种集合函数、分组排序的查询操作; * 给定关系表和查询要求,会写出正确的SQL语句

  3. 第一讲 SELECT-FROM-WHERE • SQL 概述 • SQL 的查询功能 • 单表查询 • 多表查询 • 连接查询 • 嵌套查询 • BETWEEN…AND… LIKE

  4. 4.1 SQL概述 SQL是结构化查询语言 STRUCTURED QUERY LANGUAGE 的缩写,数据查询是SQL的最主要的组成部分,此外,SQL还包含数据定义、数据操纵和数据控制等部分。 SQL已经成为关系数据库的标准语言,所有关系数据库管理系统都支持SQL,VFP也如此。 SQL 发展:最早的SQL是1986年10月美国ANSI公布的。随后ISO于1987年6月也正式采纳它为国际标准,1989年又推出了SQL89版,1992年又推出了SQL92新标准版本。

  5. SQL语言主要特点: (1)SQL是一种结构化的语言,集数据定义DDL、数据操纵DML、数据控制DCL功能为一体。具有数据定义、数据查询、数据操纵和数据控制等功能。 (2) SQL是一种非过程化的语言,它不需要告诉计算机怎样做,只要描述清楚“做什么”即可。

  6. (3)SQL语法比较简单,但语言功能很强,它很接近英语自然语言,因此容易学习和掌握 • (4)SQL命令可以交互方式使用,也可以嵌入方式使用,如嵌入程序设计语言中使用,VFP就是这种方式。 • SQL的命令动词参见表4-1: • 查询:SELECT • 定义:CREATE DROP ALTER • 操纵:INSERT UPDATE DELETE • 控制:GRANT REVOKE

  7. 4.2查询功能 SQL的核心是查询。SQL的查询命令也称作SELECT命令,它的基本形式由SELECT FROM WHERE查询模块组成,多个查询块可以嵌套执行,VFP的 SQL-SELECT语法如下: SELECT [ DISTINCT ] <目标字段表>FROM 表名1 [,表名2] [ , … ][ WHERE 记录筛选条件] [ GROUP BY 分组字段表 ][ HAVING 组过滤条件] [ORDER BY 排序字段1[ASC | DESC] [ 排序字段2 … ] ]

  8. SELECT命令6个短语的含义:须掌握 SELECT:要挑选表中哪些字段(以逗号分隔)——“投影” FROM:说明所选字段来自哪些表,以逗号分隔。WHERE:说明所查询记录的过滤条件——“选择” GROUP BY:查询结果如何分组,用以分组统计、汇总 HAVING:挑拣分组的条件, 必须跟随GROUP BY使用 ORDER BY:确定查询结果的排列顺序

  9. 4.2.1 简单查询 • SELECT [ DISTINCT ] <目标字段表>FROM 表名 [ WHERE 记录筛选条件] • 按以上命令格式,请写出如下问题的查询命令: • 找出档案表中的专业名称 例4-2 • 档案表中有几个专业 例4-2 DISTINCT • 成绩超过70分的有哪些课程,找出课程号 例4-5 • 档案表中有哪些学生的档案,请给出他们的姓名 例4-1 • 从选课表中查出所有记录。“ * ”号的使用 例4-3 • 找出学号和成绩(成绩大于80分呢 例4-4,或者要求 课程号为“1002”或“1004”,并且成绩小于75分例4-6)

  10. 4.2.2 简单的联接查询——从多表查询 • SELECT [DIST] [表.] 字段1 [ , [表.]字段2 … ]FROM 表1,表2 [ , … ]WHERE 表连接条件[ AND 记录筛选条件 ] • 请思考用简单的联接查询如何解决: • 检索出成绩大于80分的学生的姓名和专业 例4-7 • 成绩等于80分的学生选修的课程名和学分例4-8 • 成绩小于60分的学生的所有信息 结果

  11. 4.2.3 嵌套查询 基于多个关系的查询中,若结果出自一个关系,但相关的条件却涉及多个关系。语法: SELECT [ DISTINCT ] <目标字段表>FROM 表名 WHERE 字段名 运算符 ( Select-From-Where ) 记录筛选条件 内层子查询 例4.7 检索出成绩大于80分的学生的姓名和专业。 例4.8 索出成绩为80分的学生选修的课程名和学分。 例4.10 成绩小于60分的学生的档案表信息

  12. 4.2.4 几个特殊的运算符 BETWEEN....AND.... “在 … 和 … 之间” LIKE “具有 … 特征,象…一样” SQL中通配符“%”表示0个或多个字符, “_”(下划线)表示一个字符。 例4.11 检索出成绩在80到100分之间的选课信息 例4.12 从课程表中检索出课程名中带有“学”字的课程号和课程名。 例4.13 找出家庭住址不是”西安”也不是”北京"的同学的学号和姓名。 成绩 BETWEEN 80 AND 100 课程名 LIKE "%学" 家庭住址 NOT IN ("西安" ,"北京")

  13. 4.2.5 排序 使用ORDER BY可以将SELECT查询结果排序。 SELECT – FROM – [ WHERE – ] ORDER BY 字段名 [ ASC | DESC ] [ ,字段名 [ ASC | DESC ] ... ] 其中:ASC表示升序(默认),DESC表示降序 例4.10 按成绩升序检索出选课表中的所有信息。 例4.11 先按课程号升序排列,若课程号相同再按成绩降序排列检索出选课表中的所有信息。

  14. 本讲重点回顾 • SELECT [ DISTINCT ] <目标字段表>FROM 表名1 [,表名2] [ , … ][WHERE 表连接条件[ AND 记录筛选条件] ] • [ ORDER BY 字段1 [ ASC | DESC ] [ ,字段2 [ ASC | DESC ] ... ] • 单表查询 • 多表查询 • 连接查询 • 嵌套查询 • BETWEEN…AND… LIKE

  15. 作业:1、本章书中例题 2、本章习题

More Related