编辑推荐
数据库工程师进阶中级实用指南
挖掘SQL常见技术的新用法
基于标准SQL编写
示例程序均可下载
《SQL进阶教程》适合具有一定SQL编程经验的工程师阅读
《SQL进阶教程》特色
1.转变面向过程语言的思维定式,学习SQL常见技术的不同用法,切实提升SQL应用技能
2.解析经典文献,回顾关系数据库发展史,从逻辑学、集合论的角度讲述SQL和关系模型的理论,深刻理解面向集合思维
3.讲解由浅入深,辅以200多段基于标准SQL编写的示例代码和丰富的练习题(包含解答),理论与实践相结合,易懂、实用、好操作内容简介
《SQL进阶教程》是《SQL基础教程》作者MICK为志在向中级进阶的数据库工程师编写的一本SQL技能提升指南。《SQL进阶教程》可分为两部分,第一部分介绍了SQL语言不同寻常的使用技巧,带领读者从SQL常见技术,比如CASE表达式、自连接、HAVING子句、外连接、关联子查询、EXISTS……去探索新发现。这部分不仅穿插讲解了这些技巧背后的逻辑和相关知识,而且辅以丰富的示例程序,旨在帮助读者提升编程水平;第二部分着重介绍关系数据库的发展史,把实践与理论结合起来,旨在帮助读者加深对关系数据库和SQL语言的理解。此外,每节末尾均设置有练习题,并在书末提供了解答,方便读者检验自己对书中知识点的掌握程度。
《SQL进阶教程》适合具有半年以上SQL使用经验、已掌握SQL基础知识和技能、希望提升自己编程水平的读者阅读。作者简介
MICK(作者),日本知名数据库工程师,就职于SI企业,致力于数据仓库和商业智能的开发。日常除了在其个人主页“关系数据库的世界”中分享数据库和SQL的相关技术信息外,还为CodeZine(http://codezine.jp)及IT技术杂志WEB+DBPRESS撰写相关技术文章。同时还是《SQL解惑(第2版)》《SQL**指南(第4版)》日文版的译者。
吴炎昌(译者),毕业于西北工业大学软件工程专业。曾供职于日本多家软件公司,从事系统开发工作。2015年回国后加入美团点评,现任系统研发工程师。爱好旅行、电影,以及品尝各种美食,有一位志趣相投的伴侣。目录
第1章 神奇的SQL
1-1 CASE表达式2
▲在SQL里表达条件分支2
练习题19
1-2 自连接的用法21
▲面向集合语言SQL21
练习题35
1-3 三值逻辑和NULL38
▲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 SQL编程方法216
▲确立SQL的编程风格201
第2章 关系数据库的世界
2-1 关系数据库的历史216
▲1969年——一切从这里开始216
2-2 为什么叫“关系”模型222
▲为什么不叫“表”模型222
2-3 开始于关系,结束于关系229
▲关于封闭世界的幸福229
2-4 地址这一巨大的怪物233
▲为什么关系数据库里没有指针233
2-5 GROUPBY和PARTITIONBY238
▲物以“类”聚238
2-6 从面向过程思维向声明式思维、面向集合思维转变的7个关键点243
▲画圆243
2-7 SQL和递归集合250
▲SQL和集合论之间250
2-8 人类的逻辑学256
▲浅谈逻辑学的历史256
2-9 消灭NULL委员会260
▲全世界的数据库工程师团结起来!260
2-10 SQL中的层级265
▲严格的等级社会265
第3章 附录
3-1 习题解答272
3-2 参考文献296
后 记300