本书是《SQL基础教程》作者MICK为志在向中级进阶的数据库工程师编写的一本SQL技能提升指南。全书可分为两部分,第一部分介绍了SQL语言不同寻常的使用技巧,带领读者从SQL常见技术,比如CASE表达式、自连接、HAVING子句、外连接、关联子查询、EXISTS……去探索新发现。这部分不仅穿插讲解了这些技巧背后的逻辑和相关知识,而且辅以丰富的示例程序,旨在帮助读者提升编程水平;第二部分着重介绍关系数据库的发展史,把实践与理论结合起来,旨在帮助读者加深对关系数据库和SQL语言的理解。此外,每节末尾均设置有练习题,并在书末提供了解答,方便读者检验自己对书中知识点的掌握程度。
......(更多)
作者简介:
MICK
日本知名数据库工程师,就职于SI企业,致力于数据仓库和商业智能的开发。日常除了在其个人主页“关系数据库的世界”中分享数据库和SQL的相关技术信息外,还为CodeZine()及IT技术杂志WEB+DB PRESS撰写相关技术文章。同时还是《SQL解惑(第2版)》《SQL权威指南(第4版)》日文版的译者。
译者简介:
吴炎昌
毕业于西北工业大学软件工程专业。曾供职于日本多家软件公司,从事系统开发工作。2015年回国后加入美团点评,现任系统研发工程师。爱好旅行、电影,以及品尝各种美食,有一位志趣相投的伴侣。
......(更多)
第1章 神奇的 SQL
1-1 CASE表达式 2
▲ 在SQL里表达条件分支 2
练习题 19
1-2 自连接的用法 21
▲ 面向集合语言SQL 21
练习题 35
1-3 三值逻辑和NULL 38
▲ SQL的温柔陷阱 38
1-4 HAVING子句的力量 55
▲ 出彩的配角 55
练习题 70
1-5 外连接的用法 72
▲ SQL的弱点及其趋势和对策 72
练习题 92
1-6 用关联子查询比较行与行 94
▲ 用SQL进行行与行之间的比较 94
练习题 110
1-7 用SQL进行集合运算 112
▲ SQL和集合论 112
练习题 128
1-8 EXISTS谓词的用法 130
▲ SQL中的谓词逻辑 130
练习题 146
1-9 用SQL处理数列 149
▲ 灵活使用谓词逻辑 149
练习题 165
1-10 HAVING子句又回来了 167
▲ 再也不要叫它配角了! 167
练习题 183
1-11 让SQL飞起来 186
▲ 简单的性能优化 186
1-12 关系数据库的世界 216
▲ 确立SQL的编程风格 201
第2章 SQL 编程方法
2-1 关系数据库的历史 216
▲ 1969年——一切从这里开始 216
2-2 为什么叫“关系”模型 222
▲ 为什么不叫“表”模型 222
2-3 开始于关系,结束于关系 229
▲ 关于封闭世界的幸福 229
2-4 地址这一巨大的怪物 233
▲ 为什么关系数据库里没有指针 233
2-5 GROUP BY和PARTITION BY 238
▲ 物以“类”聚 238
1-8 EXISTS谓词的用法
1-9 用SQL处理数列
1-10 HAVING子句又回来了
1-11 让SQL飞起来
1-12 关系数据库的世界
2-1 关系数据库的历史
2-2 为什么叫“关系”模型
2-3 开始于关系,结束于关系 229
2-4 地址这一巨大的怪物
2-5 GROUP BY和PARTITION BY 238
2-6 从面向过程思维向声明式思维、面向集合思维转变的7个关键点 243
▲ 画圆 243
2-7 SQL和递归集合 250
▲ SQL和集合论之间 250
2-8 人类的逻辑学 256
▲ 浅谈逻辑学的历史 256
2-9 消灭NULL委员会 260
▲ 全世界的数据库工程师团结起来! 260
2-10 SQL中的层级 264
▲ 严格的等级社会 266
第3章 附录
3-1 习题解答 274
3-2 参考文献 298
后 记 302
......(更多)
“这个世界没有一天是无聊的,只不过是你懒惰已久的感官无法发现眼前事物的乐趣而已”
......(更多)