商品详情
书名:SQL*实例:第2版
定*:139.8
ISBN:9787**5577962
作者:安东尼·莫利纳罗等
版次:第1版
出版时间:202*-*2
内容提要:
本书详细介绍了Oracle、MySQL、PostgreSQL、SQL Server、DB2等各种关系数据库的SQL查询技巧和*些基础的SQL查询语句,并且通过短小*悍的实例,**讲解了如何插入、更新和删除数据,还介绍了如何检索记录、为查询结果排序、同时操作多张数据库表、查询元数据、处理涉及字符串和数值的操作、根据时间数据和日期数据进行运算、执行层次查询和区间查询等。随着多种SQL实现大量采用窗口函数,本书第2版针对相关实例做了*化,还新增了为数据*和算法工程师量身定制的实例。
作者简介:
安东尼·莫利纳罗(Anthony Molinaro),美*强生公司数据*,**SQL技术,擅长解决棘手的SQL问题,对关系理论有深入研究。 罗伯*·德·格拉夫(Robert de Graaf),RightShip公司数据*,负责为公司设计和开发用于预测性分析的算法,另著有Managing Your Data Science Projects。 【译者介绍】 袁*忠,自由译者,20多年*职翻译经验,主译图书,偶译新闻稿、软文;出版译著40余*,其中*括《Python编程从入门到实践》《C++ Prime Plus中文版》《Python基础教程(第3版)》《算法图解》《面向模式的软件架构:模式系统》《风投的选择:谁是下*个十亿美元级公司》等,总计700余万字;*事翻译前,做过两年杂志和图书编辑,从事过三年化工产品开发和分析工作。
目录:
前言xi
第 * 章 检索记录 *
*.* 检索表中所有的行和列 *
*.2 从表中检索*分行 2
*.3 查找满足多个条件的行 2
*.4 从表中检索*分列 3
*.5 提供有意义的列名 3
*.6 在WHERE子句中使用别名来引用列 4
*.7 拼接列值 5
*.8 在SELECT语句中使用条件逻辑 6
*.9 限制返回的行数 7
*.*0 从表中随机返回n行数据 8
*.** 查找NULL值 9
*.*2 将NULL转换为实际值 *0
*.*3 模式查找 *0
*.*4 小结 **
第 2 章 查询结果排序 *2
2.* 按*顺序返回查询结果 *2
2.2 按多字段排序 *3
2.3 按子串排序 *4
2.4 对同时*含字母和数字的数据进行排序 *5
2.5 排序时处理NULL值 *7
2.6 根据依赖于数据的键进行排序 23
2.7 小结 24
第 3 章 使用多张表 25
3.* 合并多个行集 25
3.2 合并相关的行 27
3.3 查找两张表中相同的行 28
3.4 从*张表中检索没有出*另*张表中的值 30
3.5 从*张表中检索在另*张表中没有对应行的行 34
3.6 在查询中添加连接并确**影响其他连接 36
3.7 判断两张表*含的数据是否相同 38
3.8 识别并避*笛卡儿积 44
3.9 同时使用连接和聚合 45
3.*0 同时使用外连接和聚合 49
3.** 返回多张表中*匹配的行 5*
3.*2 在运算和比较中使用NULL 55
3.*3 小结 55
第 4 章 插入、更新和删除 56
4.* 插入新记录 56
4.2 插入默认值 57
4.3 用NULL覆盖默认值 58
4.4 将*张表中的行复制到另*张表中 59
4.5 复制表定义 59
4.6 同时插入多张表 60
4.7 禁止在*定列中插入值 62
4.8 修改表中的记录 63
4.9 *当存在匹配行时才更新 64
4.*0 使用来自另*张表中的值进行更新 64
4.** 合并记录 67
4.*2 删除表中的所有记录 69
4.*3 删除*定记录 69
4.*4 删除单条记录 70
4.*5 删除违反引用完整性的记录 70
4.*6 删除重复记录 7*
4.*7 删除在另*张表中引用了的记录 72
4.*8 小结 73
第 5 章 元数据查询 74
5.* 列出模式中的所有表 74
5.2 列出表中的列 75
5.3 列出表的索引列 76
5.4 列出表的约束 77
5.5 列出没有相应索引的外键 78
5.6 使用SQL生成SQL 8*
5.7 描述Oracle数据库中的数据字典视图 83
5.8 小结 84
第 6 章 处理字符串 85
6.* 走查字符串 85
6.2 在字符串字面量中嵌入引号 87
6.3 计算字符串中*定字符出现的次数 88
6.4 将*想要的字符从字符串中删除 89
6.5 将数字数据和字符数据分开 90
6.6 判断字符串是否只*含字母和数字 94
6.7 提取姓名中的*字母 98
6.8 根据*分字符串排序 *0*
6.9 根据字符串中的数字排序 *03
6.*0 根据表中的行*建分隔列表 *08
6.** 将分隔数据转换为多值IN列表 ***
6.*2 按字母顺序排列字符串中的字符 **6
6.*3 识别可视为数字的字符串 *20
6.*4 提取第n个子串 *25
6.*5 拆分IP地址 *3*
6.*6 根据发音比较字符串 *33
6.*7 查找与模式*匹配的文本 *34
6.*8 小结 *37
第 7 章 处理数字 *38
7.* 计算平均值 *38
7.2 找出最大列值和最小列值 *40
7.3 计算列值总和 *42
7.4 计算表中的行数 *43
7.5 计算非NULL列值数 *45
7.6 生成移动总计 *45
7.7 生成移动总积 *47
7.8 平滑值序列 *48
7.9 计算众数 *49
7.*0 计算中值 *5*
7.** 计算总计占比 *53
7.*2 聚合值可为NULL的列 *55
7.*3 计算剔除最*值和最低值后的平均值 *56
7.*4 将由字母和数字组成的字符串转换为数字 *58
7.*5 修改移动总计中的值 60
7.*6 使用*对中位差找出异常值 *6*
7.*7 使用本福*法则查找反常数据 *64
7.*8 小结 *66
第 8 章 日期算术运算 *67
8.* 加上或减去若干天、若干月或若干年 *67
8.2 确定两个日期相差多少天 *69
8.3 确定两个日期之间有多少个工作日 *7*
8.4 确定两个日期相隔多少个月或多少年 *75
8.5 确定两个日期相隔多少秒、多少分钟或多少小时 *78
8.6 计算*年中有多少个工作日 *79
8.7 确定当前记录和下*条记录存储的日期相隔多少天 *90
8.8 小结 *94
第 9 章 操作日期 *95
9.* 判断*定的年份是否是闰年 *95
9.2 确定*定年份有多少天 20*
9.3 提取日期的各个组成*分 203
9.4 找出*个月的第 *天和最后*天 205
9.5 找出*年中所有的星期n 207
9.6 找出*个月中第 *个和最后*个星期n 2*3
9.7 *建日历 2*9
9.8 列出*年中各个季度的第 *天和最后*天 230
9.9 确定给定季度的第 *天和最后*天 234
9.*0 补*缺失的日期 240
9.** 根据日期的*定*分进行查找 247
9.*2 根据日期的*定*分对记录进行比较 248
9.*3 找出重叠的日期范围 25*
9.*4 小结 256
第 *0 章 涉及区间的查询 257
*0.* 找出*系列连续的值 257
*0.2 找出同*个分组或分区中相邻行的差 260
*0.3 找出连续值构成的区间的起点和*点 265
*0.4 填补值区间空隙 268
*0.5 生成连续的数字值 27*
*0.6 小结 274
第 ** 章 *级查找 275
**.* 在结果集中翻页 275
**.2 在表中跳过n行数据 277
**.3 在外连接中使用OR逻辑 279
**.4 确定哪些行是互逆的 280
**.5 返回前n条记录 282
**.6 找出值最*和最低的记录 283
**.7 查看后面的行 284
**.8 平移行值 286
**.9 结果排名 288
**.*0 *重复行 289
**.** 查找马值 29*
**.*2 生成简单预测 296
**.*3 小结 303
第 *2 章 报表制作和整形 304
*2.* 将结果集转置为*行 304
*2.2 将结果集转置为多行 306
*2.3 对结果集进行逆转置 3**
*2.4 将结果集逆转置为*列 3*2
*2.5 *结果集中的重复值 3*5
*2.6 转置结果集以简化涉及多行的计算 3*7
*2.7 *建尺寸固定的数据桶 3*9
*2.8 *建预定数量的桶 32*
*2.9 *建水平直方图 322
*2.*0 *建垂直直方图 323
*2.** 返回未被用作分组依据的列 325
*2.*2 计算简单的小计 327
*2.*3 计算各种可能的小计 33*
*2.*4 标出非小计行 340
*2.*5 使用CASE表达式来标识行 34*
*2.*6 *建*疏矩阵 343
*2.*7 按时间分组 344
*2.*8 同时对*同的分组/分区进行聚合 348
*2.*9 聚合移动值区间 349
*2.20 转置*含小计的结果集 356
*2.2* 小结 360
第 *3 章 分层查询 36*
*3.* 呈现父子关系 362
*3.2 呈现子–父–祖父关系 365
*3.3 *建基于表的分层视图 369
*3.4 找出给定父行的所有子行 373
*3.5 确定叶子节点、分支节点和根节点 374
*3.6 小结 38*
第 *4 章 杂项 382
*4.* 使用SQL Server运算符PIVOT*建交叉报表 382
*4.2 使用SQL Server运算符UNPIVOT逆转置交叉报表 384
*4.3 使用Oracle子句MODEL转置结果集 386
*4.4 从*固定的位置提取子串 389
*4.5 确定*定年份有多少天(另*种Oracle解决方案) 39*
*4.6 找出同时*含字母和数字的字符串 393
*4.7 在Oracle中将整数转换为其二进制表示 395
*4.8 对经过排名的结果集进行转置 397
*4.9 给经过两次转置的结果集添加列标题 40*
*4.*0 在Oracle中将标量子查询转换为复合子查询 4*2
*4.** 将序列化数据转换为行 4*4
*4.*2 计算占总计的*分比 4*8
*4.*3 确定编组是否*含*的值 4*9
*4.*4 小结 422
附录A 温习窗口函数 423
附录B 通用表表达式 446
- 人民邮电出版社有限公司 (微信公众号认证)
- 人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
- 扫描二维码,访问我们的微信店铺
- 随时随地的购物、客服咨询、查询订单和物流...