第1章 关系型数据库和SQL 1
1.1 SQL是什么 2
1.2 Microsoft SQL Server、MySQL和Oracle 3
1.3 关系型数据库 4
1.4 主键和外键 5
1.5 数据类型 6
1.6 空值 7
1.7 SQL的重要性 8
1.8 小结 8
第2章 基本数据检索 9
2.1 一条简单的SELECT语句 9
2.2 语法注释 10
2.3 注释 11
2.4 指定列 12
2.5 带有空格的列名 13
2.6 预览完整SELECT语句 14
2.7 小结 15
第3章 计算字段和别名 16
3.1 字面值 16
3.2 算术运算 18
3.3 连接字段 19
3.4 列的别名 20
3.5 表的别名 21
3.6 小结 22
第4章 使用函数 23
4.1 什么是函数 23
4.2 字符函数 24
4.3 复合函数 27
4.4 日期/时间函数 28
4.5 数值函数 30
4.6 转换函数 32
4.7 小结 34
第5章 排序数据 35
5.1 升序排序 35
5.2 降序排序 37
5.3 根据多列来排序 37
5.4 根据计算字段来排序 38
5.5 排序序列 39
5.6 小结 41
第6章 查询条件 42
6.1 应用查询条件 42
6.2 WHERE子句运算符 43
6.3 限制行 44
6.4 用Sort限制行数 45
6.5 模式匹配 47
6.6 通配符 49
6.7 小结 51
第7章 布尔逻辑 52
7.1 复杂的逻辑条件 52
7.2 AND运算符 53
7.3 OR运算符 53
7.4 使用圆括号 54
7.5 多组圆括号 55
7.6 NOT运算符 56
7.7 BETWEEN运算符 58
7.8 IN运算符 59
7.9 布尔逻辑和NULL值 61
7.10 小结 62
第8章 条件逻辑 63
8.1 CASE表达式 63
8.2 CASE简单格式 64
8.3 CASE查询格式 66
8.4 ORDER BY子句中的条件逻辑 67
8.5 WHERE子句中的条件逻辑 68
8.6 小结 69
第9章 汇总数据 70
9.1 消除重复 70
9.2 聚合函数 71
9.3 COUNT函数 73
9.4 分组数据 74
9.5 多列和排序 75
9.6 基于聚合的查询条件 77
9.7 GROUP BY子句中的条件逻辑 79
9.8 HAVING子句中的条件逻辑 80
9.9 排名函数 81
9.10 分区 85
9.11 小结 87
第10章 分类汇总和交叉表 89
10.1 使用ROLLUP增加分类汇总 89
10.2 使用CUBE增加分类汇总 93
10.3 创建交叉表布局 97
10.4 小结 101
第11章 内连接 103
11.1 连接两个表 104
11.2 内连接 105
11.3 内连接中表的顺序 106
11.4 内连接的另一种规范 107
11.5 再谈表的别名 107
11.6 小结 109
第12章 外连接 110
12.1 外连接 110
12.2 左连接 112
12.3 判断NULL值 113
12.4 右连接 114
12.5 外连接中表的顺序 115
12.6 全连接 116
12.7 交叉连接 117
12.8 小结 119
第13章 自连接和视图 121
13.1 自连接 121
13.2 创建视图 123
13.3 引用视图 125
13.4 视图的优点 126
13.5 修改和删除视图 127
13.6 小结 128
第14章 子查询 129
14.1 子查询的类型 129
14.2 使用子查询作为数据源 130
14.3 在查询条件中使用子查询 133
14.4 关联子查询 134
14.5 EXISTS运算符 135
14.6 使用子查询作为一个计算的列 136
14.7 公用表表达式 138
14.8 小结 139
第15章 集合逻辑 140
15.1 使用UNION运算符 140
15.2 UNION和UNION ALL 142
15.3 交叉查询 144
15.4 小结 145
第16章 存储过程和参数 147
16.1 创建存储过程 148
16.2 存储过程中的参数 149
16.3 执行存储过程 151
16.4 修改和删除存储过程 151
16.5 再谈函数 152
16.6 小结 153
第17章 修改数据 154
17.1 修改策略 154
17.2 插入数据 155
17.3 删除数据 158
17.4 更新数据 159
17.5 相关子查询的更新 160
17.6 小结 161
第18章 维护表 162
18.1 数据定义语言 162
18.2 表属性 163
18.3 表的列 163
18.4 主键和索引 164
18.5 外键 165
18.6 创建表 166
18.7 创建索引 167
18.8 小结 168
第19章 数据库设计原理 169
19.1 规范化的目的 169
19.2 如何规范化数据 171
19.3 数据库设计的艺术 174
19.4 规范化的替代方法 174
19.5 小结 176
第20章 显示数据的策略 177
20.1 重温交叉表布局 177
20.2 Excel和外部数据 178
20.3 Excel透视表 181
20.4 小结 185
附录A 初识Microsoft SQL Server 187
附录B 初识MySQL 189
附录C 初识Oracle 192