书籍详情
SQL基础教程
作者:(日)MICK 著
出版社:人民邮电出版社
出版时间:2013-08-01
ISBN:9787115322692
定价:¥69.00
购买这本书可以去
内容简介
《图灵程序设计丛书:SQL基础教程》介绍了关系数据库以及用来操作关系数据库的SQL语言的使用方法,提供了大量的示例程序和详实的操作步骤说明,读者可以亲自动手解决具体问题,循序渐进地掌握SQL的基础知识和技巧,切实提高自身的编程能力。在每章结尾备有习题,用来检验读者对该章内容的理解程度。另外,《图灵程序设计丛书:SQL基础教程》还将重要知识点总结为“法则”,方便大家随时查阅。《图灵程序设计丛书:SQL基础教程》适合完全没有或者具备较少编程和系统开发经验的初学者,也可以作为大中专院校的教材及企业新人的培训用书。
作者简介
MICK日本资深数据库工程师,致力于商业智能和数据仓库的开发。为日本著名的IT杂志WEB+PRESS撰写专栏。著作有《达人SQL完全指南》、《达人SQL设计终极指南》,译著有《SQL谜题》、《SQL权威指南》等。孙淼专业从事对日软件设计和研发工作,曾于2007年至2009年赴日学习工作。精通J2EE和数据库开发,热衷于品尝和制作美食。罗勇专业从事对日软件设计和研发工作,曾于2007年至2009年赴日学习工作。精通J2EE和数据库开发。译有《NoSQL数据库入门》、《明解C语言》等。
目录
目 录
前言 III
关于本书 IV
读者对象 IV
学习本书前的预备知识 IV
本书涉及的关系数据库 V
本书的学习安排 V
随书光盘简介 VI
第1章 数据库和SQL 1
1-1 数据库是什么 3
我们身边的数据库 3
为什么DBMS那么重要 4
DBMS种类 6
1-2 数据库的结构 8
RDBMS的常见系统结构 8
表的结构 10
1-3 SQL概要 13
标准SQL 13
SQL语句及其种类 14
SQL的基本书写规则 15
1-4 表的创建 18
表的内容的创建 18
数据库的创建(CREATE DATABASE语句) 19
表的创建(CREATE TABLE语句) 19
命名规则 21
数据类型的指定 22
约束的设置 24
1-5 表的删除和更新 25
表的删除(DROP TABLE语句) 25
表定义的更新(ALTER TABLE语句) 26
向Shohin表中插入数据 27
练习题 30
第2章 查询基础 31
2-1 SELECT语句基础 33
列的查询 33
查询出表中所有的列 35
为列设定别名 36
常数的查询 38
从结果中删除重复行 38
根据WHERE语句来选择记录 41
注释的书写方法 43
2-2 算术运算符和比较运算符 45
算术运算符 45
需要注意NULL 46
比较运算符 48
对字符串使用不等号时的注意事项 50
不能对NULL使用比较运算符 53
2-3 逻辑运算符 56
NOT运算符 56
AND运算符和OR运算符 58
通过括号进行强化 60
逻辑运算符和真值 62
含有NULL时的真值 64
练习题 66
第3章 聚合与排序 67
3-1 对表进行聚合查询 69
聚合函数 69
计算表中数据的行数 70
计算NULL以外数据的行数 71
计算合计值 72
计算平均值 74
计算最大值和最小值 75
使用聚合函数删除重复值(关键字DISTINCT) 77
3-2 对表进行分组 79
GROUP BY子句 79
聚合键中包含NULL的情况 81
使用WHERE子句时GROUP BY的执行结果 82
与聚合函数和GROUP BY子句有关的常见错误 84
3-3 为聚合结果指定条件 89
HAVING子句 89
HAVING子句的构成要素 92
相对于HAVING子句,更适合写在WHERE子句中的条件 93
3-4 对查询结果进行排序 96
ORDER BY子句 96
指定升序或降序 98
指定多个排序键 99
NULL的顺序 99
在排序键中使用显示用别名 100
ORDER BY子句中可以使用的列 102
不要使用列编号 102
练习题 104
第4章 数据更新 105
4-1 数据的插入(INSERT语句的使用方法) 107
什么是INSERT 107
INSERT语句的基本语法 108
列清单的省略 111
插入NULL 111
插入默认值 112
从其他表中复制数据 114
4-2 数据的删除(DELETE语句的使用方法) 117
DROP TABLE语句和DELETE语句 117
DELETE语句的基本语法 117
指定删除对象的DELETE语句(搜索型DELETE) 118
4-3 数据的更新(UPDATE语句的使用方法) 121
UPDATE语句的基本语法 121
指定条件的UPDATE语句(搜索型UPDATE) 122
使用NULL进行更新 123
多列更新 124
4-4 事务 126
什么是事务 126
创建事务 127
ACID特性 132
练习题 133
第5章 复杂查询 135
5-1 视图 137
视图和表 137
创建视图的方法 139
视图的限制①——定义视图时不能使用ORDER BY子句 142
视图的限制②——对视图进行更新 143
删除视图 147
5-2 子查询 148
子查询和视图 148
子查询的名称 151
标量子查询 151
标量子查询的书写位置 154
使用标量子查询时的注意事项 155
5-3 关联子查询 156
普通的子查询和关联子查询的区别 156
关联子查询也是用来对集合进行切分的 159
结合条件一定要写在子查询中 160
练习题 161
第6章 函数、谓词、CASE表达式 163
6-1 各种各样的函数 165
函数的种类 165
算术函数 166
字符串函数 170
日期函数 178
转换函数 182
6-2 谓词 186
什么是谓词 186
LIKE谓词——字符串的部分一致查询 186
BETWEENT谓词——范围查询 190
IS NULL、IS NOT NULL——判断是否为NULL 191
IN谓词——OR的简便用法 192
使用子查询作为IN谓词的参数 193
EXIST谓词 198
6-3 CASE表达式 202
什么是CASE表达式 202
CASE表达式的语法 202
CASE表达式的使用方法 203
练习题 209
第7章 集合运算 211
7-1 表的加减法 213
什么是集合运算 213
表的加法——UNION 213
集合运算的注意事项 216
包含重复行的集合运算——ALL选项 217
选取表中公共部分——INTERSECT 218
记录的减法——EXCEPT 219
7-2 联结(以列为单位对表进行联结) 222
什么是联结 222
内联结——INNER JOIN 223
外联结——OUTER JOIN 228
3张以上表的联结 231
交叉联结——CROSS JOIN 234
特定的联结语句和过时的语法 237
练习题 242
第8章 SQL高级处理 243
8-1 窗口函数 245
什么是窗口函数 245
窗口函数的语法 246
语法的基本使用方法——使用RANK函数 246
无须指定PARTITION BY 249
专用窗口函数的种类 250
窗口函数的适用范围 251
作为窗口函数使用的聚合函数 252
计算移动平均 254
两个ORDER BY 257
8-2 GROUPING运算符 259
同时计算出合计值 259
ROLLUP——同时计算出合计值和小计值 260
GROUPING函数——让NULL更加容易分辨 265
CUBE——用数据来搭积木 267
GROUPING SETS——取得期望的积木 269
练习题 270
附录A 安装PostgreSQL 271
附录B 在PostgreSQL中执行SQL的方法 278
附录C 练习题答案 284
前言 III
关于本书 IV
读者对象 IV
学习本书前的预备知识 IV
本书涉及的关系数据库 V
本书的学习安排 V
随书光盘简介 VI
第1章 数据库和SQL 1
1-1 数据库是什么 3
我们身边的数据库 3
为什么DBMS那么重要 4
DBMS种类 6
1-2 数据库的结构 8
RDBMS的常见系统结构 8
表的结构 10
1-3 SQL概要 13
标准SQL 13
SQL语句及其种类 14
SQL的基本书写规则 15
1-4 表的创建 18
表的内容的创建 18
数据库的创建(CREATE DATABASE语句) 19
表的创建(CREATE TABLE语句) 19
命名规则 21
数据类型的指定 22
约束的设置 24
1-5 表的删除和更新 25
表的删除(DROP TABLE语句) 25
表定义的更新(ALTER TABLE语句) 26
向Shohin表中插入数据 27
练习题 30
第2章 查询基础 31
2-1 SELECT语句基础 33
列的查询 33
查询出表中所有的列 35
为列设定别名 36
常数的查询 38
从结果中删除重复行 38
根据WHERE语句来选择记录 41
注释的书写方法 43
2-2 算术运算符和比较运算符 45
算术运算符 45
需要注意NULL 46
比较运算符 48
对字符串使用不等号时的注意事项 50
不能对NULL使用比较运算符 53
2-3 逻辑运算符 56
NOT运算符 56
AND运算符和OR运算符 58
通过括号进行强化 60
逻辑运算符和真值 62
含有NULL时的真值 64
练习题 66
第3章 聚合与排序 67
3-1 对表进行聚合查询 69
聚合函数 69
计算表中数据的行数 70
计算NULL以外数据的行数 71
计算合计值 72
计算平均值 74
计算最大值和最小值 75
使用聚合函数删除重复值(关键字DISTINCT) 77
3-2 对表进行分组 79
GROUP BY子句 79
聚合键中包含NULL的情况 81
使用WHERE子句时GROUP BY的执行结果 82
与聚合函数和GROUP BY子句有关的常见错误 84
3-3 为聚合结果指定条件 89
HAVING子句 89
HAVING子句的构成要素 92
相对于HAVING子句,更适合写在WHERE子句中的条件 93
3-4 对查询结果进行排序 96
ORDER BY子句 96
指定升序或降序 98
指定多个排序键 99
NULL的顺序 99
在排序键中使用显示用别名 100
ORDER BY子句中可以使用的列 102
不要使用列编号 102
练习题 104
第4章 数据更新 105
4-1 数据的插入(INSERT语句的使用方法) 107
什么是INSERT 107
INSERT语句的基本语法 108
列清单的省略 111
插入NULL 111
插入默认值 112
从其他表中复制数据 114
4-2 数据的删除(DELETE语句的使用方法) 117
DROP TABLE语句和DELETE语句 117
DELETE语句的基本语法 117
指定删除对象的DELETE语句(搜索型DELETE) 118
4-3 数据的更新(UPDATE语句的使用方法) 121
UPDATE语句的基本语法 121
指定条件的UPDATE语句(搜索型UPDATE) 122
使用NULL进行更新 123
多列更新 124
4-4 事务 126
什么是事务 126
创建事务 127
ACID特性 132
练习题 133
第5章 复杂查询 135
5-1 视图 137
视图和表 137
创建视图的方法 139
视图的限制①——定义视图时不能使用ORDER BY子句 142
视图的限制②——对视图进行更新 143
删除视图 147
5-2 子查询 148
子查询和视图 148
子查询的名称 151
标量子查询 151
标量子查询的书写位置 154
使用标量子查询时的注意事项 155
5-3 关联子查询 156
普通的子查询和关联子查询的区别 156
关联子查询也是用来对集合进行切分的 159
结合条件一定要写在子查询中 160
练习题 161
第6章 函数、谓词、CASE表达式 163
6-1 各种各样的函数 165
函数的种类 165
算术函数 166
字符串函数 170
日期函数 178
转换函数 182
6-2 谓词 186
什么是谓词 186
LIKE谓词——字符串的部分一致查询 186
BETWEENT谓词——范围查询 190
IS NULL、IS NOT NULL——判断是否为NULL 191
IN谓词——OR的简便用法 192
使用子查询作为IN谓词的参数 193
EXIST谓词 198
6-3 CASE表达式 202
什么是CASE表达式 202
CASE表达式的语法 202
CASE表达式的使用方法 203
练习题 209
第7章 集合运算 211
7-1 表的加减法 213
什么是集合运算 213
表的加法——UNION 213
集合运算的注意事项 216
包含重复行的集合运算——ALL选项 217
选取表中公共部分——INTERSECT 218
记录的减法——EXCEPT 219
7-2 联结(以列为单位对表进行联结) 222
什么是联结 222
内联结——INNER JOIN 223
外联结——OUTER JOIN 228
3张以上表的联结 231
交叉联结——CROSS JOIN 234
特定的联结语句和过时的语法 237
练习题 242
第8章 SQL高级处理 243
8-1 窗口函数 245
什么是窗口函数 245
窗口函数的语法 246
语法的基本使用方法——使用RANK函数 246
无须指定PARTITION BY 249
专用窗口函数的种类 250
窗口函数的适用范围 251
作为窗口函数使用的聚合函数 252
计算移动平均 254
两个ORDER BY 257
8-2 GROUPING运算符 259
同时计算出合计值 259
ROLLUP——同时计算出合计值和小计值 260
GROUPING函数——让NULL更加容易分辨 265
CUBE——用数据来搭积木 267
GROUPING SETS——取得期望的积木 269
练习题 270
附录A 安装PostgreSQL 271
附录B 在PostgreSQL中执行SQL的方法 278
附录C 练习题答案 284
猜您喜欢