PowerPoint Presentation

Similar documents
单元四数据的查询 数据库原理与应用 课内例题 任务 5 多表查询 课内例题 例创建数据表 orders, 并向表中添加记录 首先创建表 orders,sql 语句如下 : CREATE TABLE orders( o_num int NOT NULL AUTO_INCREMENT, o_date d

第四章 关系数据库标准语言SQL.doc

PowerPoint Presentation

SQL Server 数据库 SQL 结构化查询语言 是本课程的重点, 要在熟悉语句的语法框架的前提下, 灵活地写出实现实际需求的 SQL 语句 本章的每个例子, 都要在附录 Student 数据库上加以上机练习与变换

幻灯片 1

单元四数据的查询 数据库原理与应用 教学设计 数据库原理与应用 教学设计 课题名称 综合案例 数据的查询一 授课班级 移动通信 课时 2 学时 授课地点 实训室 知识目标能力目标素质目标 1. 掌握查询所有数据的方 1. 能够熟练地查询表中的 1. 培养学生的吃苦耐劳 法 ; 所有数据 ; 克服困难

Microsoft Word - 第4章 单表查询—教学设计.doc

Oracle数据库应用技术13 [兼容模式]

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

Microsoft Word - 第5章.doc

关于“查询设计器”布局 (ADP)

第二章 关系数据库

Microsoft Word - 第4章 单表查询—样章.doc

幻灯片 1

作业参考答案

Microsoft Word - 正文.doc

赵松涛写作


2


威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 號 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

68 数据库系统原理与应用 ( 第三版 )(SQL Server 2012) 本节只介绍如何定义基本表和索引, 视图的概念和定义在 3.5 节讨论 1. 基本表定义 CREATE TABLE 表名 ( 列名 1 数据类型 [ 列级完整性约束条件 ], 列名 2 数据类型 [ 列级完整性约束条件 ],

教 务 信 息 教 学 日 常 运 行 工 作 4 月 6 日, 教 务 部 高 丽 琴 老 师 参 加 南 昌 市 教 育 局 2016 年 中 小 学 教 师 资 格 认 定 工 作 培 训 会 2016 年 教 师 资 格 认 定 工 作 是 从 省 考 向 国 考 过 渡 后 的 第 一 次

Microsoft PowerPoint ?????????3 [Compatibility Mode]

派遣公司人力資源管理措施對派遣人員離職傾向之影響:

计算机网络与经济(二).doc

2006年暑期工作安排

设计模式 Design Patterns

MySQL 数据库原理 设计与应用 课程教学大纲 ( 课程英文名称 ) 课程编号 : 学 分 :5 学分 学 时 :50 学时 ( 其中 : 讲课 38 学时上机 12 学时 ) 先修课程 : 计算机基础 适用专业 : 信息技术及其计算机相关专业 开课部门 : 计算机相关院系 一 课程的性质与目标

Microsoft Word - CH04.doc

44 Access 2010 数据库程序设计实验教程 图 3 2 简单查询向导二 2. 使用查询向导创建查询 ts2, 查询 tstud 表的 学号 姓名 字段, tcourse 表的 课程名 字段, tscore 表的 成绩 字段 打开 学生管理.accdb, 使用查询向导创建一个查询, 在 简单


幻灯片 1

<4D F736F F D20B8CAD7E9CDA8A1B A1B33638BAC5B9D8D3DAD4DAC8ABD6DDB5B3D4B1D6D0BFAAD5B9D5FDB7B4B5E4D0CDD1A7CFB0BDCCD3FDBBEEB6AFB5C4CDA8D6AA2E646F63>

:,,,,,,,,,,,,,,,,,,,,,,,,,,,

度定生老病死

按 照 卫 计 委 的 规 划, 对 于 县 级 医 院 主 要 做 一 下 工 作 加 强 临 床 重 点 专 科 建 设, 提 升 县 级 医 院 医 疗 技 术 水 平, 并 配 备 与 专 科 建 设 目 标 一 致 的 适 宜 设 备 1. 县 医 院 除 了 将 健 全 一 级 诊 疗

专科疾病诊治(二十四)

Microsoft Word - 林金萱.docx

<4D F736F F D20BACEECF1E2D3A3BAD6D0D2BDC0EDC2DBB5C4BACBD0C4CAC7CEB1BFC6D1A72E646F63>

<B0DACDD1D1C7BDA1BFB5B5C4C0A7C8C52E733932>

把生命托付给谁?


《中老年男性养生保健》

项目 3 创建和管理表 任务实现 Office Visio PK 3 FK FK1 3.1 相关知识 SQL Server 一 制订表规划 1. 表要存储什么对象 2. 表中每一列的数据类型和长度 059

57v05-輸出

Microsoft Word - 第五讲 SQL.DOC

预备篇

Microsoft Word - 新正文.doc

Microsoft Word - ch09.doc

目錄 C ontents Chapter MTA Chapter Chapter

第三章 SQL语言

幻灯片 1

学习情境 4 关系数据库标准语言 SQL 159 子学习情境一 认识 SQL 语言 任务一 SQL 语言的产生与发展 SQL(Structured Query Language) 语言是 1974 年由 Boyce 和 Chamberlin 提出的 1975 年至 1979 年 IBM 公司 San

幻灯片 1

Microsoft Word - 第1-5章.doc

Microsoft Word - 新正文4041.doc

幻灯片 1

天津天狮学院关于修订2014级本科培养方案的指导意见

民 族 音 乐 学 写 作 音 乐 教 育 综 合 理 论 音 乐 文 化 学 古 代 音 乐 文 献 西 方 音 乐 史 音 乐 鉴 赏 与 评 论 声 乐 演 唱 ( 美 声 ) 声 乐 演 唱 ( 民 族 ) 1 对 民 族 音 乐 学 的 学 科 定 义 基 本 观 念 和 发 展 历 史

中 外 音 乐 史 与 音 乐 评 论 声 乐 演 唱 ( 美 声 ) 声 乐 演 唱 ( 民 族 ) 声 乐 演 唱 ( 流 行 ) 1 熟 练 掌 握 中 国 古 代 及 西 方 音 乐 史 ( 含 古 代 近 现 代 部 分 ) 基 础 知 识 2 能 够 对 中 国 及 西 方 音 乐 史

--study doc: client tool:dbreaver. create schema app1; drop table app1.salary; create table app1.salary ( emp n

DB2 (join) SQL DB2 11 SQL DB2 SQL 9.1 DB2 DB2 ( ) SQL ( ) DB2 SQL DB2 DB2 SQL DB2 DB2 SQL DB2 ( DB2 ) DB2 DB2 DB2 SQL DB2 (1) SQL (2) S

第二章 关系数据库

Microsoft Word - prays.doc


幻灯片 1

江 小 说 中 的 南 京 大 屠 杀 与 民 族 国 家 观 念 表 达 究 大 致 采 取 个 案 分 析 以 解 读 叙 述 策 略 等 角 度 切 人 讨 钗 和 哈 金 南 京 安 魂 曲 关 时 代 相 关 作 者 来 自 多 个 国 家 作 两 部 小 说 为 例 从 直 面 历 史

PowerPoint 演示文稿

学生表 主键 : 学号 字段名称 数据字段必填允许空有效性规则类型大小字段字符串 学号 文本 10 是 否 姓名 文本 4 是 否 性别 文本 1 男 Or 女 是 否 籍贯 文本 10 出生日期 日期 / 时间 入学总分 数字 整型 >=0 And <=900 住校否 是 / 否 爱好特长 文本

Microsoft Word - mei.doc


腰部酸痛保健法

第一编 文明之前的人类

(1) (5) (1) (1) (3) (3) (6) (7) (7) (9) (11) (13) (13) (15) (16) (22) (23) (25) (26)

PowerPoint 演示文稿

第一章三角函数 1.3 三角函数的诱导公式 A 组 ( ) 一 选择题 : 共 6 小题 1 ( 易诱导公式 ) 若 A B C 分别为 ABC 的内角, 则下列关系中正确的是 A. sin( A B) sin C C. tan( A B) tan C 2 ( 中诱导公式 ) ( ) B. cos(

5. 下列条件子句中, 能够筛选出价格不在 ( 不包括边界值 ) 的是 ( ) A. Where 价格 NOT BETWEEN 100 AND 200 B. Where 价格 BETWEEN NOT 100 AND 200 C. Where 价格 NOT BETWEEN 101 AND

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

幻灯片 1

季刊9web.indd

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

香港容易混淆中藥的調查與討論

文前.indd

第 3 章选择结构 q q q Python 中表示条件的方法 if 语句 选择结构程序设计方法

CSS201.mps

光绪帝

幻灯片 1

國立政治大學中國文學系國文教學碩士學位班


L L

Chapter 6. Relational Algebra

幻灯片 1

Microsoft Word - MySQL-排版文件.doc

课程名称:数据库系统概论

中国教育管理全集(一百零六)

1. 课 题 研 究 的 背 景 及 现 状 据 统 计, 目 前 中 国 围 棋 人 口 已 经 已 超 过 了 4000 万, 同 时 学 棋 的 孩 童 显 著 呈 现 低 龄 化 的 趋 势, 虽 然 表 面 看 来, 很 多 培 训 机 构 都 有 不 少 孩 子 在 学 棋, 但 容 易

第6章  数据库技术基础

Microsoft Word - 課程發展委員會(選版本).doc

ebook46-23

Transcription:

5 数据查询 5.1 简单 SELECT 语句 5.2 SELECT 语句的统计功能 5.3 SELECT 语句中的多表连接 5.4 子查询 5.5 使用 SQL Server Management Studio 进行数据查询与维护

学习目标 通过本部分的学习, 应该掌握以下内容 数据查询的各种语句 运用 S QL S e rve r M a n a g e m e n t S t u d io 和基本的 S ELECT 语句查询表中的数据 数据维护的基本方法

5.1 简单 SELECT 语句 5.1.1 S ELECT 语句的语法格式 S ELECT 语句的基本语法格式如下 S ELECT 列名的列表 [ IN TO 新表名 ] [ FROM 表名与视图名列表 ]

[ WH ERE 条件表达式 ] [ GROU P B Y 列名的列表 ] [ H AVIN G 条件表达式 ] [ ORD ER B Y 列名 1 [ AS C D ES C], 列名 2 [ AS C D ES C],... 列名 n [ AS C D ES C] ]

5.1.2 基本的 S ELECT 语句 S ELECT 语句的基本形式如下 S ELECT 选取的列 FROM 表的列表 WH ERE 查询条件

5.1.3 使用 IN TO 子句 使用 IN TO 子句允许用户定义一个新表, 并且把 S ELECT 子句的数据插入到新表中, 其语法格式如下 S ELECT 选取的列 IN TO 新表名 FROM 表的列表 WH ERE 查询条件

5.1.4 使用 WH ERE 子句 WH ERE 子句确定了查询的条件, 表 5-1 给出了组成查询条件表达式的运算符

表 5-1 查询条件表达式的运算符 > >= = < <= <>! =!>!< BETWEEN AND BETWEEN AND IN NOT IN NOT!>!< LIKE NOT LIKE IS NULL NOT NULL AND OR NOT

1. 比较运算符 2. 范围运算符 3. 列表运算符 4. 模糊匹配运算符 5. 空值运算符 6. 逻辑运算符

5.1.5 使用 ORD ER B Y 子句 在查询结果集中, 记录的顺序是按它们在表中的顺序进行排列的, 可以使用 ORD ER B Y 子句对查询结果重新进行排序, 可以规定升序 ( 从低到高或从小到大 ) 或降序 ( 从高到低或从大到小 ), 方法是使用关键字 AS C ( 升序 ) 或 D ES C ( 降序 )

如果省略 AS C 或 D ES C, 系统则默认为升序 可以在 ORD ER B Y 子句中指定多个列, 检索结果首先按第 1 列进行排序, 第 1 列值相同的那些数据行, 再按照第 2 列排序, 依次类推 ORD ER B Y 子句要写在 WH ERE 子句的后面

5.2 SELECT 语句的统计功能 S ELECT 语句中的统计功能对查询结果集进行求和 求平均值 求最大最小值等操作 统计的方法是通过集合函数和 GROU P B Y 子句 COM P U TE 子句进行组合来实现的

5.2.1 使用集合函数 集合函数是在查询结果记录的列集上进行各种统计运算, 运算的结果形成一条汇总记录

表 5-2 SQL Server 2005 集合函数及其功能 SUM([ALL DISTINCT] ) MIN([ALL DISTINCT] ) MAX([ALL DISTINCT] ) COUNT({[ALL DISTINCT] } *) CHECKSUM(* n]) [, BINARY_CHECKSUM(* [, n]) AVG([ALL DISTINCT] ) COUNT * DISTINCT

1. 求和函数 S U M 与求平均值函数 AVG S U M 和 AVG 是数值型列值的求和与求平均值函数, 它们只能用于数值型字段, 而且忽略列值为 N U LL 的记录

2. 最大值函数 M AX 与最小值函数 M IN M AX 和 M IN 函数分别用来返回指定列表达式中的最大值和最小值, 忽略列值为 N U LL 的记录, 列表达式中的列可以是任何可排序的类型

3. 计数函数 COU N T COU N T 函数用于统计查询结果集中记录的个数, 语法上, * 用于统计所有记录的个数, ALL 用于统计指定列的列值非空的记录个数, D IS TIN CT 用于统计指定列的列值非空且不重复的记录个数 默认值为 ALL

5.2.2 使用 GROU P B Y 子 句 GROU P B Y 子句就能够实现这种统计, 它按照指定的列, 对查询结果进行分组统计, 该子句写在 WH ERE 子句的后面

注意 : S ELECT 子句中的选择列表中出现的列, 或者包含在集合函数中, 或者包含在 GROU P B Y 子句中, 否则, S QL S e rve r 2 0 0 5 将返回错误信息

语法格式如下 GROU P B Y 列名 [ H AVIN G 条件表达式 ] "H AVIN G 条件表达式 " 选项是对生成的组进行筛选

5.2.3 使用 COM P U TE B Y 子句 使用 COM P U TE B Y 子句时必须使用 ORD ER B Y 对 COM P U TE B Y 中指定的列进行排序 语法格式如下 COM P U TE 集合函数 [ B Y 列名 ]

5.3 SELECT 语句中的多表连 接 在实际应用中, 数据查询往往会涉及多个表, 这就需要将多个表连接起来进行查询 这种连接分为交叉连接 内连接 外连接和自连接 4 种

图 5-7 连接要使用的表和数据

5.3.1 交叉连接 S ELECT 列名列表 FROM 表名 1 CROS S JOIN 表名 2 或者 S ELECT 列名列表 FROM 表名 1, 表名 2 交叉连接的结果是两个表的笛卡儿积 交叉连接在实际应用中一般是没有意义的, 但在数据库的数学模式上有重要的作用

5.3.2 内连接 内连接是只包含满足连接条件的数据行, 是将交叉连接结果集按照连接条件进行过滤的结果, 也称自然连接 连接条件通常采用 主键 = 外键 的形式

内连接有以下两种语法格式 S ELECT 列名列表 FROM 表名 1 [ IN N ER] JOIN 表名 2 ON 表名 1. 列名 = 表名 2. 列名 或 S ELECT 列名列表 FROM 表名 1, 表名 2 WH ERE 表名 1. 列名 = 表名 2. 列名

5.3.3 外连接 外连接根据连接时保留表中记录的侧重不同分为 左外连接 右外连接 和 全外连接

1. 左外连接 将左表中的所有记录分别与右表中的每条记录进行组合, 结果集中除返回内部连接的记录以外, 还在查询结果中返回左表中不符合条件的记录, 并在右表的相应列中填上 N U LL, 由于 b it 类型不允许为 N U LL, 就以 0 值填充

左外连接的语法格式如下 S ELECT 列名列表 FROM 表名 1 AS A LEFT [ OU TER] JOIN 表名 2 AS B ON A. 列名 = B. 列名

2. 右外连接 和左外连接类似, 右外连接是将左表中的所有记录分别与右表中的每条记录进行组合, 结果集中除返回内部连接的记录以外, 还在查询结果中返回右表中不符合条件的记录, 并在左表的相应列中填上 N U LL, 由于 b it 类型不允许为 N U LL, 就以 0 值填充

右外连接的语法格式如下 S ELECT 列名列表 FROM 表名 1 AS A RIGH T [ OU TER] JOIN 表名 2 AS B ON A. 列名 = B. 列名

3. 全外连接 全外连接是将左表中的所有记录分别与右表中的每条记录进行组合, 结果集中除返回内部连接的记录以外, 还在查询结果中返回两个表中不符合条件的记录, 并在左表或右表的相应列中填上 N U LL, b it 类型以 0 值填充

全外连接的语法格式如下 S ELECT 列名列表 FROM 表名 1 AS A FU LL [ OU TER] JOIN 表名 2 AS B ON A. 列名 = B. 列名

5.3.4 自连接 自连接就是一个表的两个副本之间的内连接 表名在 FROM 子句中出现两次, 必须对表指定不同的别名, 在 S ELECT 子句中引用的列名也要使用表的别名进行限定

5.3.5 合并结果集 U N ION 运算符用于将两个或多个检索结果合并成一个结果, 当使用 U N ION 时, 需遵循以下两个规则

( 1 ) 所有查询中的列数和列的顺序必须相同 ( 2 ) 所有查询中按顺序对应列的数据类型必须兼容

5.4 子查询 在 S QL 语言中, 当一个查询语句嵌套在另一个查询的查询条件之中时, 称为子查询 子查询总是写在圆括号中, 可以用在使用表达式的任何地方

5.4.1 比较测试中的子查询 比较测试中的子查询是指父查询与子查询之间用比较运算符进行连接 但是用户必须确切地知道子查询返回的是一个单值, 否则数据库服务器将报错

5.4.2 集合成员测试中的子查 询 集合成员测试中的子查询是指父查询与子查询之间用 IN 或 N OT IN 进行连接, 判断某个属性列值是否在子查询的结果中, 通常子查询的结果是一个集合

5.4.3 存在性测试中的子查询 存在性测试中的子查询只是检查子查询返回的结果集是否为空, 使用的关键字为 EXIS TS 或 N OT EXIS TS, 它产生逻辑真值 TRU E 或假值 FALS E 例如, 如果使用 EXIS TS 进行测试, 并且子查询返回的结果集不空, 则测试的结果为真值 TRU E

5.4.4 批量比较测试中的子查 询 1. 使用 AN Y 关键字的比较 测试 通过比较运算符将一个表达式的值或列值与子查询返回的一列值中的每一个进行比较, 只要有一次比较的结果为 TRU E, 则 AN Y 测试返回 TRU E

2. 使用 ALL 关键字的比较测试 通过比较运算符将一个表达式的值或列值与子查询返回的一列值中的每一个进行比较, 只要有一次比较的结果为 FALS E, 则 ALL 测试返回 FALS E

5.4.5 使用子查询向表中添加多 条记录 使用 IN S ERT S ELECT 语句可以一次向表中添加多条记录, 语法格式如下 IN S ERT 表名 [ ( 字段列表 ) ] S ELECT 字段列表 FROM 表名 WH ERE 条件表达式

5.5 使用 SQL Server Management Studio 进行数据查询与维护 对表中数据的维护操作, 可以在 S QL S e rve r M a n a g e m e n t S t u d io 中的查询设计器下进行, 如图 5-2 1 所示 5.5.1 查询设计器简介 在查询设计器中可以进行表的插入 删除 修改和查询操作

图 5-20 启动查询设计器

图 5-21 查询设计器窗口

5.5.2 查询设计器的应用实例 例 5-3 9 由客户信息表中, 给出深圳和上海的所有客户信息, 显示顺序按照姓名的升序排序

图 5-22 查询设计器界面

图 5-23 使用查询设计器进行查询