您好,欢迎光临上海图书公司! 登录
SQL进阶教程(第2版)/图灵程序设计丛书
ISBN:9787115609762
作者:作者:(日)MICK|责编:高宇涵|译者:吴炎昌//侯振龙
定价:¥89.8
出版社:人民邮电
版次:第2版
印次:第1次印刷
开本:4 平装
页数:336页
商品详情
目录

第1章  神奇的SQL
  1-1  CASE表达式
    在SQL里表达条件分支
    写在前面
    CASE表达式的写法
    将已有编号方式转换为新的方式并统计
    用一条SQL语句进行多条件统计
    用CHECK约束定义多个列的条件关系
    在UPDATE语句里进行条件分支
    表之间的数据匹配
    在CASE表达式中使用聚合函数
    本节小结
    练习题
  1-2  必知必会的窗口函数
    顺序编程的复活
    什么是窗口
    一张图看懂窗口函数
    使用帧子句将其他行移至当前行
    窗口函数的内部动作
    本节小结
    练习题
  1-3  自连接的用法
    从物理到逻辑的跳跃
    可重排列、排列、组合
    删除重复行
    查找局部不一致的列
    本节小结
    练习题
  1-4  三值逻辑和NULL
    SQL的温柔陷阱
    写在前面
    理论篇
    实践篇
    本节小结
    练习题
  1-5  EXISTS谓词的用法
    SQL中的谓词逻辑
    写在前面
    理论篇
    实践篇
    本节小结
    练习题
  1-6  HAVING子句的力量
    将世界看作集合
    寻找缺失的编号
    用HAVING子句进行子查询:求众数
    查询不包含NULL的集合
    特征函数的应用
    使用HAVING语句表达全称量化
    单重集合与多重集合
    用关系除法运算进行购物篮分析
    本节小结
    练习题
  1-7  用窗口函数进行行间比较
    告别关联子查询
    写在前面
    增加、减少、没有变化
    时间轴有间断时:和过去最临近的时间进行比较
    窗口函数与关联子查询
    查询重叠的时间区间
    本节小结
    练习题
  1-8  外连接的用法
    SQL的弱点及其趋势和对策
    写在前面
    用外连接进行行列转换(1)(行→列):制作交叉表
    用外连接进行行列转换(2)(列→行):汇总重复项于一列
    在交叉表里制作嵌套式表侧栏
    作为乘法运算的连接
    全外连接
    用外连接进行集合运算
    用外连接求差集:A-B
    用外连接求差集:B-A
    用全外连接求异或集
    本节小结
    练习题
  1-9  用SQL进行集合运算
    SQL和集合论
    写在前面
    导入篇:集合运算的几个注意事项
    比较表和表:检查集合相等性之基础篇
    比较表和表:检查集合相等性之进阶篇
    用差集实现关系除法运算
    寻找相等的子集
    用于删除重复行的高效SQL
    本节小结
    练习题
  1-10  用SQL处理数列
    用SQL  处理有序数据——集大成
    写在前面
    生成连续编号
    求全部的缺失编号
    3个人能坐得下吗
    有换排的数列
    单调递增和单调递减
    本节小结
    练习题
  1-11  让SQL飞起来
    简单的SQL性能优化
    写在前面
    使用高效的查询
    避免排序
    真的用到索引了吗
    减少中间表
    本节小结
  1-12  SQL编程方法
    确立SQL  的编程风格
    写在前面
    表的设计
    编程的方针
    SQL  编程方法
    本节小结
第2章  关系数据库的世界
  2-1  关系数据库的近现代史
    数据库有过两次破坏性创新吗
    关系数据库的历史
    破坏性创新会重复吗
    NoSQL  的类型和解决方案
    性能问题的解决方案
    本节小结
  2-2  为什么叫“关系”模型
    为什么不叫“表”模型
    关系的定义
    定义域的忧虑
    关系值和关系变量
    存在“关系的关系”吗
  2-3  开始于关系,结束于关系
    关于封闭世界的幸福
    从运算角度审视集合
    实践和原理
  2-4  地址:巨大的怪物
    为什么关系数据库里没有指针
    写在前面
    关系模型是为摆脱地址而生的
    编程中泛滥的地址
    不曾远去的老将——约翰·巴克斯的梦想
  2-5  关于顺序的冒险
    SQL的中心法则
    迟来的主角
    行应该有顺序吗
  2-6  GROUPBY和PARTITIONBY
    物以“类”聚
    二者的区别
  2-7  从面向过程思维向声明式思维、面向集合思维转变的7个关键点
    画圆
    写在前面
    1.用CASE表达式代替IF语句和CASE语句。SQL更像一种函数式语言
    2.用GROUPBY和窗口函数代替循环
    3.表中的行没有顺序
    4.将表看成集合
    5.理解EXISTS谓词和“量化”的概念
    6.学习HAVING子句的真正价值
    7.不要画长方形,去画圆
  2-8  人类的逻辑学
    浅谈逻辑学的历史
    适当地抛开命题的真假吧
    逻辑学的革命
    人类的逻辑学
  2-9  SQL和递归集合
    SQL和集合论的紧密关系
    实际工作中的递归集合
    冯·诺依曼的前辈们
    数是什么
    SQL的魔术与科学
  2-10  消灭NULL委员会
    全世界的数据库工程师团结起来
    表明决心:告全体数据库工程师书
    为什么NULL如此惹人讨厌
    并不能完全消除NULL
    编号:使用异常编号
    名字:使用“无名氏”
    数值:用0代替
    日期:用最大值或最小值代替
    本节小结
  2-11  SQL中的层级
    严格的等级社会
    谓词逻辑中的层级、集合论中的层级
    为什么聚合后不能再引用原表中的列
    单元素集合也是集合
第3章  附录
  3-1  习题解答
  3-2  参考文献
    SQL  整体
    数据库设计
    性能
    集合论和谓词逻辑/三值逻辑
后记

最近浏览过的书籍