SQL经典实例第2版

SQL经典实例第2版
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: , [美] (Anthony Molinaro) , [澳] , ,
2021-12
ISBN: 9787115577962
定价: 139.80
13人买过
  • 本书详细介绍了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
    第 1 章 检索记录 1
    1.1 检索表中所有的行和列 1
    1.2 从表中检索部分行 2
    1.3 查找满足多个条件的行 2
    1.4 从表中检索部分列 3
    1.5 提供有意义的列名 3
    1.6 在WHERE子句中使用别名来引用列 4
    1.7 拼接列值 5
    1.8 在SELECT语句中使用条件逻辑 6
    1.9 限制返回的行数 7
    1.10 从表中随机返回n行数据 8
    1.11 查找NULL值 9
    1.12 将NULL转换为实际值 10
    1.13 模式查找 10
    1.14 小结 11
    第 2 章 查询结果排序 12
    2.1 按指定顺序返回查询结果 12
    2.2 按多字段排序 13
    2.3 按子串排序 14
    2.4 对同时包含字母和数字的数据进行排序 15
    2.5 排序时处理NULL值 17
    2.6 根据依赖于数据的键进行排序 23
    2.7 小结 24
    第 3 章 使用多张表 25
    3.1 合并多个行集 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.10 同时使用外连接和聚合 49
    3.11 返回多张表中不匹配的行 51
    3.12 在运算和比较中使用NULL 55
    3.13 小结 55
    第 4 章 插入、更新和删除 56
    4.1 插入新记录 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.10 使用来自另一张表中的值进行更新 64
    4.11 合并记录 67
    4.12 删除表中的所有记录 69
    4.13 删除特定记录 69
    4.14 删除单条记录 70
    4.15 删除违反引用完整性的记录 70
    4.16 删除重复记录 71
    4.17 删除在另一张表中引用了的记录 72
    4.18 小结 73
    第 5 章 元数据查询 74
    5.1 列出模式中的所有表 74
    5.2 列出表中的列 75
    5.3 列出表的索引列 76
    5.4 列出表的约束 77
    5.5 列出没有相应索引的外键 78
    5.6 使用SQL生成SQL 81
    5.7 描述Oracle数据库中的数据字典视图 83
    5.8 小结 84
    第 6 章 处理字符串 85
    6.1 走查字符串 85
    6.2 在字符串字面量中嵌入引号 87
    6.3 计算字符串中特定字符出现的次数 88
    6.4 将不想要的字符从字符串中删除 89
    6.5 将数字数据和字符数据分开 90
    6.6 判断字符串是否只包含字母和数字 94
    6.7 提取姓名中的首字母 98
    6.8 根据部分字符串排序 101
    6.9 根据字符串中的数字排序 103
    6.10 根据表中的行创建分隔列表 108
    6.11 将分隔数据转换为多值IN列表 111
    6.12 按字母顺序排列字符串中的字符 116
    6.13 识别可视为数字的字符串 120
    6.14 提取第n个子串 125
    6.15 拆分IP地址 131
    6.16 根据发音比较字符串 133
    6.17 查找与模式不匹配的文本 134
    6.18 小结 137
    第 7 章 处理数字 138
    7.1 计算平均值 138
    7.2 找出最大列值和最小列值 140
    7.3 计算列值总和 142
    7.4 计算表中的行数 143
    7.5 计算非NULL列值数 145
    7.6 生成移动总计 145
    7.7 生成移动总积 147
    7.8 平滑值序列 148
    7.9 计算众数 149
    7.10 计算中值 151
    7.11 计算总计占比 153
    7.12 聚合值可为NULL的列 155
    7.13 计算剔除最高值和最低值后的平均值 156
    7.14 将由字母和数字组成的字符串转换为数字 158
    7.15 修改移动总计中的值 60
    7.16 使用绝对中位差找出异常值 161
    7.17 使用本福特法则查找反常数据 164
    7.18 小结 166
    第 8 章 日期算术运算 167
    8.1 加上或减去若干天、若干月或若干年 167
    8.2 确定两个日期相差多少天 169
    8.3 确定两个日期之间有多少个工作日 171
    8.4 确定两个日期相隔多少个月或多少年 175
    8.5 确定两个日期相隔多少秒、多少分钟或多少小时 178
    8.6 计算一年中有多少个工作日 179
    8.7 确定当前记录和下一条记录存储的日期相隔多少天 190
    8.8 小结 194
    第 9 章 操作日期 195
    9.1 判断特定的年份是否是闰年 195
    9.2 确定特定年份有多少天 201
    9.3 提取日期的各个组成部分 203
    9.4 找出一个月的第 一天和最后一天 205
    9.5 找出一年中所有的星期n 207
    9.6 找出一个月中第 一个和最后一个星期n 213
    9.7 创建日历 219
    9.8 列出一年中各个季度的第 一天和最后一天 230
    9.9 确定给定季度的第 一天和最后一天 234
    9.10 补全缺失的日期 240
    9.11 根据日期的特定部分进行查找 247
    9.12 根据日期的特定部分对记录进行比较 248
    9.13 找出重叠的日期范围 251
    9.14 小结 256
    第 10 章 涉及区间的查询 257
    10.1 找出一系列连续的值 257
    10.2 找出同一个分组或分区中相邻行的差 260
    10.3 找出连续值构成的区间的起点和终点 265
    10.4 填补值区间空隙 268
    10.5 生成连续的数字值 271
    10.6 小结 274
    第 11 章 高级查找 275
    11.1 在结果集中翻页 275
    11.2 在表中跳过n行数据 277
    11.3 在外连接中使用OR逻辑 279
    11.4 确定哪些行是互逆的 280
    11.5 返回前n条记录 282
    11.6 找出值最高和最低的记录 283
    11.7 查看后面的行 284
    11.8 平移行值 286
    11.9 结果排名 288
    11.10 消除重复行 289
    11.11 查找马值 291
    11.12 生成简单预测 296
    11.13 小结 303
    第 12 章 报表制作和整形 304
    12.1 将结果集转置为一行 304
    12.2 将结果集转置为多行 306
    12.3 对结果集进行逆转置 311
    12.4 将结果集逆转置为一列 312
    12.5 消除结果集中的重复值 315
    12.6 转置结果集以简化涉及多行的计算 317
    12.7 创建尺寸固定的数据桶 319
    12.8 创建预定数量的桶 321
    12.9 创建水平直方图 322
    12.10 创建垂直直方图 323
    12.11 返回未被用作分组依据的列 325
    12.12 计算简单的小计 327
    12.13 计算各种可能的小计 331
    12.14 标出非小计行 340
    12.15 使用CASE表达式来标识行 341
    12.16 创建稀疏矩阵 343
    12.17 按时间分组 344
    12.18 同时对不同的分组/分区进行聚合 348
    12.19 聚合移动值区间 349
    12.20 转置包含小计的结果集 356
    12.21 小结 360
    第 13 章 分层查询 361
    13.1 呈现父子关系 362
    13.2 呈现子C父C祖父关系 365
    13.3 创建基于表的分层视图 369
    13.4 找出给定父行的所有子行 373
    13.5 确定叶子节点、分支节点和根节点 374
    13.6 小结 381
    第 14 章 杂项 382
    14.1 使用SQL Server运算符PIVOT创建交叉报表 382
    14.2 使用SQL Server运算符UNPIVOT逆转置交叉报表 384
    14.3 使用Oracle子句MODEL转置结果集 386
    14.4 从不固定的位置提取子串 389
    14.5 确定特定年份有多少天(另一种Oracle解决方案) 391
    14.6 找出同时包含字母和数字的字符串 393
    14.7 在Oracle中将整数转换为其二进制表示 395
    14.8 对经过排名的结果集进行转置 397
    14.9 给经过两次转置的结果集添加列标题 401
    14.10 在Oracle中将标量子查询转换为复合子查询 412
    14.11 将序列化数据转换为行 414
    14.12 计算占总计的百分比 418
    14.13 确定编组是否包含指定的值 419
    14.14 小结 422
    附录A 温习窗口函数 423
    附录B 通用表表达式 446
  • 内容简介:
    本书详细介绍了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
    第 1 章 检索记录 1
    1.1 检索表中所有的行和列 1
    1.2 从表中检索部分行 2
    1.3 查找满足多个条件的行 2
    1.4 从表中检索部分列 3
    1.5 提供有意义的列名 3
    1.6 在WHERE子句中使用别名来引用列 4
    1.7 拼接列值 5
    1.8 在SELECT语句中使用条件逻辑 6
    1.9 限制返回的行数 7
    1.10 从表中随机返回n行数据 8
    1.11 查找NULL值 9
    1.12 将NULL转换为实际值 10
    1.13 模式查找 10
    1.14 小结 11
    第 2 章 查询结果排序 12
    2.1 按指定顺序返回查询结果 12
    2.2 按多字段排序 13
    2.3 按子串排序 14
    2.4 对同时包含字母和数字的数据进行排序 15
    2.5 排序时处理NULL值 17
    2.6 根据依赖于数据的键进行排序 23
    2.7 小结 24
    第 3 章 使用多张表 25
    3.1 合并多个行集 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.10 同时使用外连接和聚合 49
    3.11 返回多张表中不匹配的行 51
    3.12 在运算和比较中使用NULL 55
    3.13 小结 55
    第 4 章 插入、更新和删除 56
    4.1 插入新记录 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.10 使用来自另一张表中的值进行更新 64
    4.11 合并记录 67
    4.12 删除表中的所有记录 69
    4.13 删除特定记录 69
    4.14 删除单条记录 70
    4.15 删除违反引用完整性的记录 70
    4.16 删除重复记录 71
    4.17 删除在另一张表中引用了的记录 72
    4.18 小结 73
    第 5 章 元数据查询 74
    5.1 列出模式中的所有表 74
    5.2 列出表中的列 75
    5.3 列出表的索引列 76
    5.4 列出表的约束 77
    5.5 列出没有相应索引的外键 78
    5.6 使用SQL生成SQL 81
    5.7 描述Oracle数据库中的数据字典视图 83
    5.8 小结 84
    第 6 章 处理字符串 85
    6.1 走查字符串 85
    6.2 在字符串字面量中嵌入引号 87
    6.3 计算字符串中特定字符出现的次数 88
    6.4 将不想要的字符从字符串中删除 89
    6.5 将数字数据和字符数据分开 90
    6.6 判断字符串是否只包含字母和数字 94
    6.7 提取姓名中的首字母 98
    6.8 根据部分字符串排序 101
    6.9 根据字符串中的数字排序 103
    6.10 根据表中的行创建分隔列表 108
    6.11 将分隔数据转换为多值IN列表 111
    6.12 按字母顺序排列字符串中的字符 116
    6.13 识别可视为数字的字符串 120
    6.14 提取第n个子串 125
    6.15 拆分IP地址 131
    6.16 根据发音比较字符串 133
    6.17 查找与模式不匹配的文本 134
    6.18 小结 137
    第 7 章 处理数字 138
    7.1 计算平均值 138
    7.2 找出最大列值和最小列值 140
    7.3 计算列值总和 142
    7.4 计算表中的行数 143
    7.5 计算非NULL列值数 145
    7.6 生成移动总计 145
    7.7 生成移动总积 147
    7.8 平滑值序列 148
    7.9 计算众数 149
    7.10 计算中值 151
    7.11 计算总计占比 153
    7.12 聚合值可为NULL的列 155
    7.13 计算剔除最高值和最低值后的平均值 156
    7.14 将由字母和数字组成的字符串转换为数字 158
    7.15 修改移动总计中的值 60
    7.16 使用绝对中位差找出异常值 161
    7.17 使用本福特法则查找反常数据 164
    7.18 小结 166
    第 8 章 日期算术运算 167
    8.1 加上或减去若干天、若干月或若干年 167
    8.2 确定两个日期相差多少天 169
    8.3 确定两个日期之间有多少个工作日 171
    8.4 确定两个日期相隔多少个月或多少年 175
    8.5 确定两个日期相隔多少秒、多少分钟或多少小时 178
    8.6 计算一年中有多少个工作日 179
    8.7 确定当前记录和下一条记录存储的日期相隔多少天 190
    8.8 小结 194
    第 9 章 操作日期 195
    9.1 判断特定的年份是否是闰年 195
    9.2 确定特定年份有多少天 201
    9.3 提取日期的各个组成部分 203
    9.4 找出一个月的第 一天和最后一天 205
    9.5 找出一年中所有的星期n 207
    9.6 找出一个月中第 一个和最后一个星期n 213
    9.7 创建日历 219
    9.8 列出一年中各个季度的第 一天和最后一天 230
    9.9 确定给定季度的第 一天和最后一天 234
    9.10 补全缺失的日期 240
    9.11 根据日期的特定部分进行查找 247
    9.12 根据日期的特定部分对记录进行比较 248
    9.13 找出重叠的日期范围 251
    9.14 小结 256
    第 10 章 涉及区间的查询 257
    10.1 找出一系列连续的值 257
    10.2 找出同一个分组或分区中相邻行的差 260
    10.3 找出连续值构成的区间的起点和终点 265
    10.4 填补值区间空隙 268
    10.5 生成连续的数字值 271
    10.6 小结 274
    第 11 章 高级查找 275
    11.1 在结果集中翻页 275
    11.2 在表中跳过n行数据 277
    11.3 在外连接中使用OR逻辑 279
    11.4 确定哪些行是互逆的 280
    11.5 返回前n条记录 282
    11.6 找出值最高和最低的记录 283
    11.7 查看后面的行 284
    11.8 平移行值 286
    11.9 结果排名 288
    11.10 消除重复行 289
    11.11 查找马值 291
    11.12 生成简单预测 296
    11.13 小结 303
    第 12 章 报表制作和整形 304
    12.1 将结果集转置为一行 304
    12.2 将结果集转置为多行 306
    12.3 对结果集进行逆转置 311
    12.4 将结果集逆转置为一列 312
    12.5 消除结果集中的重复值 315
    12.6 转置结果集以简化涉及多行的计算 317
    12.7 创建尺寸固定的数据桶 319
    12.8 创建预定数量的桶 321
    12.9 创建水平直方图 322
    12.10 创建垂直直方图 323
    12.11 返回未被用作分组依据的列 325
    12.12 计算简单的小计 327
    12.13 计算各种可能的小计 331
    12.14 标出非小计行 340
    12.15 使用CASE表达式来标识行 341
    12.16 创建稀疏矩阵 343
    12.17 按时间分组 344
    12.18 同时对不同的分组/分区进行聚合 348
    12.19 聚合移动值区间 349
    12.20 转置包含小计的结果集 356
    12.21 小结 360
    第 13 章 分层查询 361
    13.1 呈现父子关系 362
    13.2 呈现子C父C祖父关系 365
    13.3 创建基于表的分层视图 369
    13.4 找出给定父行的所有子行 373
    13.5 确定叶子节点、分支节点和根节点 374
    13.6 小结 381
    第 14 章 杂项 382
    14.1 使用SQL Server运算符PIVOT创建交叉报表 382
    14.2 使用SQL Server运算符UNPIVOT逆转置交叉报表 384
    14.3 使用Oracle子句MODEL转置结果集 386
    14.4 从不固定的位置提取子串 389
    14.5 确定特定年份有多少天(另一种Oracle解决方案) 391
    14.6 找出同时包含字母和数字的字符串 393
    14.7 在Oracle中将整数转换为其二进制表示 395
    14.8 对经过排名的结果集进行转置 397
    14.9 给经过两次转置的结果集添加列标题 401
    14.10 在Oracle中将标量子查询转换为复合子查询 412
    14.11 将序列化数据转换为行 414
    14.12 计算占总计的百分比 418
    14.13 确定编组是否包含指定的值 419
    14.14 小结 422
    附录A 温习窗口函数 423
    附录B 通用表表达式 446
查看详情
12
相关图书 / 更多
SQL经典实例第2版
SQL Server数据库实用案例教程(第2版·微课视频版)
王雪梅 李海晨 主编;马亚丽 华进 蔡斌杰 副主编
SQL经典实例第2版
SQL数据分析实战(第2版)
[美]马特·古德瓦瑟 著;李庆良 译
SQL经典实例第2版
SQL面试宝典:图解数据库求职题(全彩)
猴子
SQL经典实例第2版
SQL Server数据库设计与应用(第2版)
张成叔
SQL经典实例第2版
SQL Server数据库实用教程(微课版)
赵明渊
SQL经典实例第2版
SQL Server数据库应用入门(项目式+微课版)
李武韬 文瑛 吴超
SQL经典实例第2版
SQL Server实例教程(2019版)
刘志成
SQL经典实例第2版
SQL实践教程(第10版)
[美]马克·谢尔曼(Mark Shellman)哈桑·阿夫尤尼(Hassan A
SQL经典实例第2版
SQL Server 2014数据库原理与实训教程
吴小刚 主编;彭文惠
SQL经典实例第2版
SQL语言从入门到精通
明日科技
SQL经典实例第2版
SQL Server从入门到精通(第5版)
明日科技
SQL经典实例第2版
SQL数据分析
[美]凯西·谷村(Cathy Tanimura)
您可能感兴趣 / 更多
SQL经典实例第2版
看世界儿童极限对比手绘百科
Graham 著;陈彦坤、[英]Ian、陈彦坤 译
SQL经典实例第2版
全球鱿鱼渔业
Graham 著;[英]Alexander、I.Arkhipkin、Paul、G.K.Rodhouse、李惠玉、杨林林、徐强强 译
SQL经典实例第2版
新东方(2021)GMAT官方指南(数学)
Graduate、Management、Admission、Council 著
SQL经典实例第2版
新东方(2021)GMAT官方指南(综合)
Graduate、Management、Admission、Council 著
SQL经典实例第2版
新东方(2021)GMAT官方指南(语文)
Graduate、Management、Admission、Council 著
SQL经典实例第2版
众多未来
Graham 著;乔丽·格雷厄姆、Jorie、金雯 译
SQL经典实例第2版
新东方GMAT官方高阶真题集
Graduate、Management、Admission、Council 著
SQL经典实例第2版
The Classical Tradition
Grafton, Anthony,Most, Glenn W.,Settis, Salvatore
SQL经典实例第2版
Inside Academic Writing:Understanding Audience and Becoming Part of an Academic Community
Grace Canseco
SQL经典实例第2版
Better Mental Health Care
Graham Thornicroft 著
SQL经典实例第2版
Chinese Classical Furniture
Grace Wu Bruce
SQL经典实例第2版
Illuminated Initials in Full Color 548 Designs
Grafton, Carol Belanger