好书推荐 好书速递 排行榜 读书文摘

SQL基础教程

SQL基础教程
作者:MICK
译者:孙淼 / 罗勇
出版社:人民邮电出版社
出版年:2017-06
ISBN:9787115455024
行业:计算机
浏览数:52

内容简介

本书是畅销书《SQL基础教程》第2版,介绍了关系数据库以及用来操作关系数据库的SQL语言的使用方法。书中通过丰富的图示、大量示例程序和详实的操作步骤说明,让读者循序渐进地掌握SQL的基础知识和使用技巧,切实提高编程能力。每章结尾设置有练习题,帮助读者检验对各章内容的理解程度。另外,本书还将重要知识点总结为“法则”,方便读者随时查阅。第2版除了将示例程序更新为对应新版本的DB的SQL之外,还新增了一章,介绍如何从应用程序执行SQL。

......(更多)

作者简介

作者简介:

MICK

日本资深数据库工程师,就职于SI企业,致力于商业智能和数据仓库的开发。为CodeZine()及IT杂志WEB+DB PRESS撰写技术文章。著作有《跟达人学SQL》《跟达人学DB设计》,是Joe Celko's SQL Puzzles and Answers,Second Edition、Joe Celko's SQL for Smarties,Fourth Edition: Advanced SQL Programming的日文版的译者。

译者简介:

孙淼

从事对日软件设计和研发工作十余年,曾于2007年至2009年赴日学习工作,2015年至今再次长期赴日工作。精通应用Java、PHP进行Web框架的设计开发,并且有Oracle、Teradata、MySQL、NoSQL等多种数据库的设计开发经验。乐于品味生活细微的点滴,热衷于品尝和制作美食。译有《SQL基础教程》等。

罗勇

从事对日软件设计和研发工作十余年,曾多次赴日学习工作,目前就职于日本某大型企业。痴迷于技术和框架的研究,多次参与项目的需求分析、概要设计,精通多语言的Web框架和数据库的设计开发。业余爱好足球,和家人旅行。译有《SQL基础教程》《NoSQL数据库入门》《明解C语言》等。

......(更多)

目录

第0章 绪论——搭建SQL的学习环境  1

0-1 PostgreSQL的安装和连接设置  3

安装步骤  3

修改设置文件  7

0-2 通过PostgreSQL执行SQL语句  9

连接PostgreSQL(登录)  9

执行SQL语句  10

创建学习用的数据库  11

连接学习用的数据库(登录)  12

第1章 数据库和SQL  13

1-1 数据库是什么  15

我们身边的数据库  15

为什么DBMS那么重要  16

DBMS的种类  18

1-2 数据库的结构  20

RDBMS的常见系统结构  20

表的结构  22

1-3 SQL概要  25

标准SQL  25

SQL语句及其种类  26

SQL的基本书写规则  27

1-4 表的创建  30

表的内容的创建  30

数据库的创建(CREATE DATABASE语句)  31

表的创建(CREATE TABLE语句)  31

命名规则  33

数据类型的指定  34

约束的设置  35

1-5 表的删除和更新  37

表的删除(DROP?TABLE语句)  37

表定义的更新(ALTER TABLE语句)  38

向Product表中插入数据  39

练习题  42

第2章 查询基础  43

2-1 SELECT语句基础  45

列的查询  45

查询出表中所有的列  47

为列设定别名  48

常数的查询  50

从结果中删除重复行  50

根据WHERE语句来选择记录  53

注释的书写方法  55

2-2 算术运算符和比较运算符  57

算术运算符  57

需要注意NULL  58

比较运算符  60

对字符串使用不等号时的注意事项  62

不能对NULL使用比较运算符  65

2-3 逻辑运算符  68

NOT运算符  68

AND运算符和OR运算符  70

通过括号强化处理  72

逻辑运算符和真值  74

含有NULL时的真值  76

练习题  78

第3章 聚合与排序  79

3-1 对表进行聚合查询  81

聚合函数  81

计算表中数据的行数  82

计算NULL之外的数据的行数  83

计算合计值  84

计算平均值  86

计算最大值和最小值  87

使用聚合函数删除重复值(关键字DISTINCT)  89

3-2 对表进行分组  91

GROUP BY子句  91

聚合键中包含NULL的情况  93

使用WHERE子句时GROUP BY的执行结果  94

与聚合函数和GROUP BY子句有关的常见错误  96

3-3 为聚合结果指定条件  101

HAVING子句  101

HAVING子句的构成要素  104

相对于HAVING子句,更适合写在WHERE子句中的条件  105

3-4 对查询结果进行排序  108

ORDER BY子句  108

指定升序或降序  110

指定多个排序键  111

NULL的顺序  111

在排序键中使用显示用的别名  112

ORDER BY子句中可以使用的列  114

不要使用列编号  114

练习题  116

第4章 数据更新  117

4-1 数据的插入(INSERT语句的使用方法)  119

什么是INSERT  119

INSERT语句的基本语法  120

列清单的省略  123

插入NULL  123

插入默认值  124

从其他表中复制数据  126

4-2 数据的删除(DELETE语句的使用方法)  129

DROP?TABLE语句和DELETE语句  129

DELETE语句的基本语法  129

指定删除对象的DELETE语句(搜索型DELETE)  130

4-3 数据的更新(UPDATE语句的使用方法)  133

UPDATE语句的基本语法  133

指定条件的UPDATE语句(搜索型UPDATE)  134

使用NULL进行更新  135

多列更新  136

4-4 事务  138

什么是事务  138

创建事务  139

ACID特性  144

练习题  145

第5章 复杂查询  147

5-1 视图  149

视图和表  149

创建视图的方法  151

视图的限制① ——定义视图时不能使用ORDER BY子句  154

视图的限制② ——对视图进行更新  155

删除视图  159

5-2 子查询  160

子查询和视图  160

子查询的名称  163

标量子查询  163

标量子查询的书写位置  166

使用标量子查询时的注意事项  167

5-3 关联子查询  168

普通的子查询和关联子查询的区别  168

关联子查询也是用来对集合进行切分的  171

结合条件一定要写在子查询中  172

练习题  173

第6章 函数、谓词、CASE表达式  175

6-1 各种各样的函数  177

函数的种类  177

算术函数  178

字符串函数  182

日期函数  190

转换函数  194

6-2 谓词  198

什么是谓词  198

LIKE谓词——字符串的部分一致查询  198

BETWEEN谓词——范围查询  202

IS?NULL、IS?NOT?NULL——判断是否为NULL  203

IN谓词——OR的简便用法  204

使用子查询作为IN谓词的参数  205

EXIST谓词  210

6-3 CASE表达式  214

什么是CASE表达式  214

CASE表达式的语法  214

CASE表达式的使用方法  215

练习题  221

第7章 集合运算  223

7-1 表的加减法  225

什么是集合运算  225

表的加法——UNION  225

集合运算的注意事项  228

包含重复行的集合运算——ALL选项  229

选取表中公共部分——INTERSECT  230

记录的减法——EXCEPT  231

7-2 联结(以列为单位对表进行联结)  234

什么是联结  234

内联结——INNER JOIN  235

外联结——OUTER JOIN  240

3张以上的表的联结  243

交叉联结——CROSS?JOIN  246

联结的特定语法和过时语法  249

练习题  254

第8章 SQL高级处理  255

8-1 窗口函数  257

什么是窗口函数  257

窗口函数的语法  258

语法的基本使用方法——使用RANK函数  258

无需指定PARTITION BY  261

专用窗口函数的种类  262

窗口函数的适用范围  263

作为窗口函数使用的聚合函数  264

计算移动平均  266

两个ORDER?BY  269

8-2 GROUPING运算符  271

同时得到合计行  271

ROLLUP——同时得出合计和小计  272

GROUPING函数——让NULL更加容易分辨  277

CUBE——用数据来搭积木  279

GROUPING SETS——取得期望的积木  281

练习题  282

第9章 通过应用程序连接数据库  283

9-1 数据库世界和应用程序世界的连接  285

数据库和应用程序之间的关系  285

驱动——两个世界之间的桥梁  286

驱动的种类  287

9-2 Java基础知识  289

第一个程序Hello,World  289

编译和程序执行  291

常见错误  294

9-3 通过Java连接PostgreSQL  298

执行SQL语句的Java程序  298

Java是如何从数据库中获取数据的呢  299

执行连接数据库的程序  301

选取表中的数据  302

更新表中的数据  305

小结  307

练习题  307

附录 练习题答案  308

......(更多)

读书文摘

Problem running post-install step. Installation may not complete correectly. The database cluster initialisation failed.

......(更多)

猜你喜欢

点击查看