前言
第1章 进入SQL世界—背景知识1
1.1 数据库简介1
1.1.1 数据库是什么1
1.1.2 数据库的作用1
1.1.3 数据库的类型2
1.1.4 数据库管理系统4
1.2 SQL简介4
1.2.1 SQL是什么4
1.2.2 SQL的作用5
1.2.3 SQL书写规则6
1.2.4 SQL示例8
1.2.5 SQL与数据分析8
1.3 安装并使用MySQL数据库8
第2章 从基础做起—数据库表的管理13
2.1 数据库的增删13
2.1.1 数据库的创建13
2.1.2 数据库的删除14
2.1.3 数据库的选择14
2.2 数据表的增删15
2.2.1 数据类型15
2.2.2 数据表的创建17
2.2.3 数据表的重命名20
2.2.4 数据表的删除21
2.3 字段的增删21
2.3.1 字段的创建21
2.3.2 字段类型的修改22
2.3.3 字段的重命名23
2.3.4 字段的删除23
2.4 数据表的约束24
2.4.1 约束的作用与类型24
2.4.2 约束的设置24
2.4.3 约束的删除与修改36
第3章 更上一层楼—数据的增删改38
3.1 SQL编程基础知识39
3.1.1 运算符39
3.1.2 运算符优先级44
3.1.3 谓词45
3.2 数据的插入53
3.2.1 单行数据插入53
3.2.2 多行数据插入55
3.2.3 查询数据插入56
3.3 数据的删除59
3.3.1 数据的全部删除59
3.3.2 数据的部分删除60
3.4 数据的修改61
3.4.1 单字段数据修改61
3.4.2 多字段数据修改62
第4章 初探SQL核心—数据的基础查询64
4.1 查询语法的七个核心关键字65
4.2 字段的处理查询78
4.2.1 常量字段78
4.2.2 字段的计算80
4.2.3 字段的拼接81
4.2.4 字段的别名83
4.3 高级过滤字段查询85
4.3.1 高级模糊匹配85
4.3.2 多字段过滤查询87
第5章 玩转SQL函数与语法—数据的高级查询89
5.1 SQL常用函数91
5.1.1 数值函数91
5.1.2 字符串函数96
5.1.3 日期和时间函数104
5.1.4 其他函数122
5.2 去重查询128
5.3 嵌套查询131
5.3.1 常量值的子查询131
5.3.2 表的子查询133
5.4 关联查询135
5.4.1 内关联137
5.4.2 左关联139
5.4.3 右关联140
5.4.4 全关联141
5.5 合并查询143
5.5.1 去重合并查询143
5.5.2 不去重合并查询144
5.6 分组排序查询145
5.7 转置查询149
第6章 封装SQL语句的表—视图的增删与查询153
6.1 视图的创建155
6.1.1 单表视图的创建156
6.1.2 多表视图的创建157
6.2 视图的删除158
6.3 视图的修改158
6.4 视图的查询162
第7章 提高查询效率的“法宝”—索引164
7.1 索引的功能与类型介绍164
7.2 常见索引类型的创建165
7.2.1 普通索引165
7.2.2 唯一索引167
7.2.3 主键索引169
7.3 常见索引类型的删除172
7.4 关于索引类型的注意事项172
7.4.1 是否适合建立索引173
7.4.2 如何正确使用索引173
第8章 实现特定功能的SQL语句集—存储过程的增删与调用174
8.1 存储过程的创建176
8.2 存储过程的删除178
8.3 存储过程的调用178
第9章 举一反三—SQL查询综合实践181
9.1 学生信息和选课考试成绩查询181
9.1.1 学生信息和选课考试成绩查询相关数据表的创建181
9.1.2 学生信息和选课考试成绩查询实践183
9.2 电商零售数据查询208
9.2.1 电商零售数据查询相关数据表的创建208
9.2.2 电商零售数据查询实践211
9.3 互联网金融投资理财数据查询231
9.3.1 互联网金融投资理财数据查询相关数据表的创建231
9.3.2 互联网金融投资理财数据查询实践235
9.4 社交网络游戏数据查询252
9.4.1 社交网络游戏数据查询相关数据表的创建253
9.4.2 社交网络游戏数据查询实践257
9.5 线下实体店销售数据查询276
9.5.1 线下实体店销售数据查询相关数据表的创建276
9.5.2 线下实体店销售数据查询实践282