互联网
类型
可以朗读
语音朗读
158千字
字数
2022-04-01
发行日期
展开全部
主编推荐语
本书介绍了从SQL基础知识到高级主题(比如分析函数和处理大型数据库)在内的所有内容,可帮助你了解当今的现代数据库世界中需要了解的有关SQL的所有信息。
内容简介
本书介绍了SQL语言的基础知识以及高级特性,包括SQL基本查询、过滤、多数据表查询、集合、数据操作、分组和聚合、子查询、连接、条件逻辑、事务、索引和约束、视图等内容。同时,为了适应近年来数据库领域的发展变化,本书针对大数据、SQL跨平台数据库服务和数据分析等领域的需求,增加了处理大型数据库的实现策略和扩展技术,以及报表和分析工具等内容。
本书适合作为数据库应用开发者和数据库管理员的入门书,也可供SQL相关从业者查阅和参考。
目录
- 版权信息
- 版权声明
- 内容提要
- O'ReillyMedia,Inc.介绍
- 业界评论
- 前言
- 资源与支持
- 第1章 背景知识
- 1.1 数据库简介
- 1.1.1 非关系型数据库系统
- 1.1.2 关系模型
- 1.1.3 术语
- 1.2 什么是SQL
- 1.2.1 SQL语句分类
- 1.2.2 SQL:一种非过程化语言
- 1.2.3 SQL示例
- 1.3 什么是MySQL
- 1.4 跨平台SQL
- 1.5 内容前瞻
- 第2章 创建和填充数据库
- 2.1 创建MySQL数据库
- 2.2 使用命令行工具mysql
- 2.3 MySQL数据类型
- 2.3.1 字符型数据
- 2.3.2 数值型数据
- 2.3.3 时间型数据
- 2.4 创建数据表
- 2.4.1 第1步:设计
- 2.4.2 第2步:改进
- 2.4.3 第3步:构建SQL模式语句
- 2.5 填充和修改数据表
- 2.5.1 插入数据
- 2.5.2 更新数据
- 2.5.3 删除数据
- 2.6 常见错误及响应
- 2.6.1 非唯一的主键
- 2.6.2 不存在的外键
- 2.6.3 列值违规
- 2.6.4 无效的日期转换
- 2.7 Sakila数据库
- 第3章 查询入门
- 3.1 查询机制
- 3.2 查询子句
- 3.3 select子句
- 3.3.1 列的别名
- 3.3.2 移除重复数据
- 3.4 from子句
- 3.4.1 数据表
- 3.4.2 数据表链接
- 3.4.3 定义数据表别名
- 3.5 where子句
- 3.6 group by和having子句
- 3.7 order by子句
- 3.7.1 升序排序和降序排序
- 3.7.2 通过数字占位符进行排序
- 3.8 练习
- 第4章 过滤
- 4.1 条件评估
- 4.1.1 使用括号
- 4.1.2 使用not运算符
- 4.2 构建条件
- 4.3 条件类型
- 4.3.1 相等条件
- 4.3.2 范围条件
- 4.3.3 成员条件
- 4.3.4 匹配条件
- 4.4 null:4个字母的单词
- 4.5 练习
- 第5章 多数据表查询
- 5.1 什么是连接
- 5.1.1 笛卡儿积
- 5.1.2 内连接
- 5.1.3 ANSI连接语法
- 5.2 连接3个或以上的数据表
- 5.2.1 使用子查询作为数据表
- 5.2.2 使用同一数据表两次
- 5.3 自连接
- 5.4 练习
- 第6章 使用集合
- 6.1 集合论入门
- 6.2 集合论实践
- 6.3 集合运算符
- 6.3.1 union运算符
- 6.3.2 intersect运算符
- 6.3.3 except运算符
- 6.4 集合运算规则
- 6.4.1 对符合查询结果排序
- 6.4.2 集合运算的优先级
- 6.5 练习
- 第7章 数据生成、操作和转换
- 7.1 处理字符串数据
- 7.1.1 生成字符串
- 7.1.2 操作字符串
- 7.2 处理数值型数据
- 7.2.1 执行算术函数
- 7.2.2 控制数值精度
- 7.2.3 使用有符号数
- 7.3 处理时间型数据
- 7.3.1 处理时区
- 7.3.2 生成时间型数据
- 7.3.3 操作时间型数据
- 7.4 转换函数
- 7.5 练习
- 第8章 分组和聚合
- 8.1 分组的概念
- 8.2 聚合函数
- 8.2.1 隐式分组与显式分组
- 8.2.2 统计不同的值
- 8.2.3 使用表达式
- 8.2.4 处理null
- 8.3 生成分组
- 8.3.1 单列分组
- 8.3.2 多列分组
- 8.3.3 通过表达式分组
- 8.3.4 生成汇总
- 8.4 分组过滤条件
- 8.5 练习
- 第9章 子查询
- 9.1 什么是子查询
- 9.2 子查询类型
- 9.3 非关联子查询
- 9.3.1 多行单列子查询
- 9.3.2 多列子查询
- 9.4 关联子查询
- 9.4.1 exists运算符
- 9.4.2 使用关联子查询操作数据
- 9.5 何时使用子查询
- 9.5.1 子查询作为数据源
- 9.5.2 子查询作为表达式生成器
- 9.6 子查询小结
- 9.7 练习
- 第10章 再谈连接
- 10.1 外连接
- 10.1.1 左外连接与右外连接
- 10.1.2 三路外连接
- 10.2 交叉连接
- 10.3 自然连接
- 10.4 练习
- 第11章 条件逻辑
- 11.1 什么是条件逻辑
- 11.2 case表达式
- 11.2.1 搜索型case表达式
- 11.2.2 简单的case表达式
- 11.3 case表达式示例
- 11.3.1 结果集变换
- 11.3.2 检查存在性
- 11.3.3 除零错误
- 11.3.4 条件更新
- 11.3.5 处理null值
- 11.4 练习
- 第12章 事务
- 12.1 多用户数据库
- 12.1.1 锁定
- 12.1.2 锁的粒度
- 12.2 什么是事务
- 12.2.1 启动事务
- 12.2.2 结束事务
- 12.2.3 事务保存点
- 12.3 练习
- 第13章 索引和约束
- 13.1 索引
- 13.1.1 创建索引
- 13.1.2 索引类型
- 13.1.3 如何使用索引
- 13.1.4 索引的不足
- 13.2 约束
- 创建约束
- 13.3 练习
- 第14章 视图
- 14.1 什么是视图
- 14.2 为什么要使用视图
- 14.2.1 数据安全
- 14.2.2 数据聚合
- 14.2.3 隐藏复杂性
- 14.2.4 连接分区数据
- 14.3 可更新视图
- 14.3.1 更新简单视图
- 14.3.2 更新复杂视图
- 14.4 练习
- 第15章 元数据
- 15.1 关于数据的数据
- 15.2 information_schema
- 15.3 使用元数据
- 15.3.1 模式生成脚本
- 15.3.2 验证部署
- 15.3.3 动态SQL生成
- 15.4 练习
- 第16章 分析函数
- 16.1 分析函数的概念
- 16.1.1 数据窗口
- 16.1.2 本地化排序
- 16.2 排名
- 16.2.1 排名函数
- 16.2.2 生成多个排名
- 16.3 报表函数
- 16.3.1 窗口框架
- 16.3.2 lag和lead
- 16.3.3 列值拼接
- 16.4 练习
- 第17章 处理大型数据库
- 17.1 分区
- 17.1.1 分区的概念
- 17.1.2 数据表分区
- 17.1.3 索引分区
- 17.1.4 分区方法
- 17.1.5 分区的优势
- 17.2 集群
- 17.3 分片
- 17.4 大数据
- 17.4.1 Hadoop
- 17.4.2 NoSQL和文档数据库
- 17.4.3 云计算
- 17.4.4 小结
- 第18章 SQL和大数据
- 18.1 Apache Drill简介
- 18.2 使用Drill查询文件
- 18.3 使用Drill查询MySQL
- 18.4 使用Drill查询MongoDB
- 18.5 使用Drill处理多个数据源
- 18.6 SQL的未来
- 附录A 示例数据库的ER图
- 附录B 练习答案
- B.1 第3章
- B.2 第4章
- B.3 第5章
- B.4 第6章
- B.5 第7章
- B.6 第8章
- B.7 第9章
- B.8 第10章
- B.9 第11章
- B.10 第12章
- B.11 第13章
- B.12 第14章
- B.13 第15章
- B.14 第16章
- 关于作者
- 关于封面
展开全部
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。