《SQL学习指南 第2版》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:(美)博利厄著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2015
  • ISBN:9787115383440
  • 页数:292 页
图书介绍:本书涉及不同平台上数据的排序、过滤和分组,以及表、视图、联结、子查询、游标、存储过程和触发器等内容,通过本书读者可以系统地学习到SQL 的知识和方法。本书包含许多原则或准则,并通过举例的方式对原则进行解释说明。本书注重实用性,操作性很强,适合于SQL 的初学者学习和广大软件开发及管理人员参考。

第1章 背景知识 1

1.1 数据库简介 1

1.1.1 非关系数据库 2

1.1.2 关系模型 3

1.1.3 一些术语 5

1.2 什么是SQL 6

1.2.1 SQL语句的分类 6

1.2.2 SQL:非过程化语句 7

1.2.3 SQL示例 9

1.3 什么是MySQL 11

1.4 内容前瞻 11

第2章 创建和使用数据库 13

2.1 创建MySQL数据库 13

2.2 使用mysql命令行工具 15

2.3 MyS QL数据类型 16

2.3.1 字符型数据 16

2.3.2 数值型数据 18

2.3.3 时间数据 20

2.4 表的创建 22

2.4.1 第1步:设计 22

2.4.2 第2步:精化 22

2.4.3 第3步:构建SQL方案语句 24

2.5 操作与修改表 27

2.5.1 插入数据 27

2.5.2 更新数据 31

2.5.3 删除数据 32

2.6 导致错误的语句 32

2.6.1 主键不唯一 32

2.6.2 不存在的外键 32

2.6.3 列值不合法 33

2.6.4 无效的日期转换 33

2.7 Bank方案 34

第3章 查询入门 37

3.1 查询机制 37

3.2 查询语句 39

3.3 select子句 39

3.3.1 列的别名 42

3.3.2 去除重复的行 43

3.4 from子句 44

3.4.1 表的概念 44

3.4.2 表连接 46

3.4.3 定义表别名 47

3.5 where子句 48

3.6 group by和having子句 50

3.7 order by子句 51

3.7.1 升序或降序排序 53

3.7.2 根据表达式排序 54

3.7.3 根据数字占位符排序 55

3.8 小测验 55

第4章 过滤 57

4.1 条件评估 57

4.1.1 使用圆括号 58

4.1.2 使用not操作符 59

4.2 构建条件 60

4.3 条件类型 60

4.3.1 相等条件 60

4.3.2 范围条件 62

4.3.3 成员条件 65

4.3.4 匹配条件 67

4.4 null: 4个字母的关键字 70

4.5 小测验 73

第5章 多表查询 75

5.1 什么是连接 75

5.1.1 笛卡儿积 76

5.1.2 内连接 77

5.1.3 ANSI连接语法 80

5.2 连接3个或更多的表 82

5.2.1 将子查询结果作为查询表 84

5.2.2 连续两次使用同一个表 86

5.3 自连接 87

5.4 相等连接和不等连接 88

5.5 连接条件和过滤条件 90

5.6 小测验 91

第6章 使用集合 93

6.1 集合理论基础 93

6.2 集合理论实践 95

6.3 集合操作符 97

6.3.1 union操作符 97

6.3.2 intersect操作符 99

6.3.3 except操作符 100

6.4 集合操作规则 102

6.4.1 对复合查询结果排序 102

6.4.2 集合操作符优先级 103

6.5 小测验 105

第7章 数据生成、转换和操作 107

7.1 使用字符串数据 107

7.1.1 生成字符串 108

7.1.2 操作字符串 112

7.2 使用数值数据 118

7.2.1 执行算术函数 119

7.2.2 控制数字精度 120

7.2.3 处理有符号数 122

7.3 使用时间数据 123

7.3.1 处理时区 123

7.3.2 生成时间数据 125

7.3.3 操作时间数据 129

7.4 转换函数 133

7.5 小测验 134

第8章 分组与聚集 135

8.1 分组概念 135

8.2 聚集函数 137

8.2.1 隐式或显式分组 138

8.2.2 对独立值计数 139

8.2.3 使用表达式 141

8.2.4 如何处理null值 141

8.3 产生分组 142

8.3.1 对单列的分组 143

8.3.2 对多列的分组 143

8.3.3 利用表达式分组 144

8.3.4 产生合计数 144

8.4 分组过滤条件 146

8.5 小测验 148

第9章 子查询 149

9.1 什么是子查询 149

9.2 子查询类型 150

9.3 非关联子查询 150

9.3.1 多行单列子查询 152

9.3.2 多列子查询 157

9.4 关联子查询 159

9.4.1 exists运算符 161

9.4.2 关联子查询操作数据 162

9.5 何时使用子查询 163

9.5.1 子查询作为数据源 163

9.5.2 过滤条件中的子查询 168

9.5.3 子查询作为表达式生成器 169

9.6 子查询总结 172

9.7 小测验 173

第10章 再谈连接 174

10.1 外连接 174

10.1.1 左外连接与右外连接 178

10.1.2 三路外连接 179

10.1.3 自外连接 181

10.2 交叉连接 184

10.3 自然连接 190

10.4 小测验 192

第11章 条件逻辑 194

11.1 什么是条件逻辑 194

11.2 case表达式 196

11.2.1 查找型case表达式 196

11.2.2 简单case表达式 198

11.3 case表达式范例 199

11.3.1 结果集变换 199

11.3.2 选择性聚合 200

11.3.3 存在性检查 202

11.3.4 除零错误 203

11.3.5 有条件更新 205

11.3.6 null值处理 205

11.4 小测验 206

第12章 事务 208

12.1 多用户数据库 208

12.1.1 锁 208

12.1.2 锁的粒度 209

12.2 什么是事务 209

12.2.1 启动事务 211

12.2.2 结束事务 212

12.2.3 事务保存点 213

12.3 小测验 215

第13章 索引和约束 216

13.1 索引 216

13.1.1 创建索引 217

13.1.2 索引类型 220

13.1.3 如何使用索引 222

13.1.4 索引的不足 224

13.2 约束 225

13.2.1 创建约束 226

13.2.2 约束与索引 227

13.2.3 级联约束 227

13.3 小测验 230

第14章 视图 231

14.1 什么是视图 231

14.2 为什么使用视图 234

14.2.1 数据安全 234

14.2.2 数据聚合 235

14.2.3 隐藏复杂性 236

14.2.4 连接分区数据 236

14.3 可更新的视图 237

14.3.1 更新简单视图 238

14.3.2 更新复杂视图 239

14.4 小测验 241

第15章 元数据 242

15.1 关于数据的数据 242

15.2 信息模式 243

15.3 使用元数据 248

15.3.1 模式生成脚本 248

15.3.2 部署验证 251

15.3.3 生成动态SQL 251

15.4 小测验 255

附录A 示例数据库的ER图 256

附录B MySQL对SQL语言的扩展 258

B.1 扩展select语句 258

B.1.1 limit子句 258

B.1.2 into outfile子句 261

B.2 组合insert/update语句 263

B.3 按排序更新和删除 265

B.4 多表更新与删除 266

附录C 练习答案 270