大部分程序员必备的编程语言是什么?

发表时间: 2019-06-12 15:05

来源:图灵教育


近年来,和其他系统领域一样,数据库领域也实现了飞速发展,应用范围不断扩大,不但出现了具有新功能的数据库,而且操作的数据量也在大幅增长。关系数据库是时下最流行的数据库,也是理解其他数据库的基础。在系统领域,通常所说的数据库指的就是关系数据库,其重要性可见一斑。

80%以上的程序员需要掌握这种计算机编程语言

如果问你哪个语言可以在关系数据库中自由穿梭,想必SQL绝对是大家心目中当之无愧的选手!结构化查询语言(Structured Query Language)简称SQL,它是一种特殊目的的编程语言,也是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

掌握SQL的重要性不言而喻。目前,SQL不仅是后端开发人员的基础技能,也成为优秀前端工程师的必备技能,毕竟凡是动态页面就涉及数据库,而学会SQL再研究其他关系数据库就简单多了。因此,标题中的80%其实是比较保守的说法,每一个程序员都需要掌握一部分SQL知识。

今天就为大家简单介绍两本无数读者喜爱的SQL入门图书,并为大家重点介绍后一本。


1. 无数前辈推荐的《SQL必知必会》

学习SQL的小伙伴对这个老朋友一定不陌生!如果有小伙伴问你,初学者适合阅读哪些SQL图书?前辈们通常首选推荐的就是这本:

80%以上的程序员需要掌握这种计算机编程语言

Sams Teach Yourself SQL in 10 Minutes (4th Edition)

作者:Ben Forta

译者:钟鸣 刘晓霞

  • 畅销全球的数据库入门经典
  • 麻省理工学院、伊利诺伊大学等众多大学参考教材
  • 让你在通勤的路上就可以掌握SQL
  • 专门开设了网站,提供下载、勘误和答疑论坛


这本书豆瓣评分8.6,深受SQL初学者的喜爱!美系图书,知名技术作家Ben Forta作品(Ben老师写了好几本必知必会系列,图灵这边出版的还有一本《MySQL必知必会》),MIT等知名学府将这本书作为教材。特别简单易学,小开本,256页。

由浅入深地讲解了SQL的基本概念和语法,涉及数据的排序、过滤和分组,以及表、视图、联结、子查询、游标、存储过程和触发器等内容,实例丰富,便于查阅。增加了针对Apache Open Office Base、MariaDB、SQLite等DBMS的描述,并根据新版本的Oracle、SQL Server、MySQL和PostgreSQL更新了相关示例。


2. 热评如潮的日系经典《SQL基础教程》

6年前,作为初学者必备的《SQL基础教程》首版问世。通过讲解关系数据库以及用来操作关系数据库的SQL语言的使用方法,为读者提供了大量的示例程序和详实的操作步骤说明,得到了读者的喜爱。在豆瓣上获得8.8的评分,重印次数达到13次。

这6年间数据库也发挥着越来越重要的作用。随着技术的不断更新,《SQL基础教程》也进行了升级,针对具有代表性的DBMS的新版本对SQL 语法的支持情况更新了描述法,还专门介绍通过应用程序使用数据库的方法。

为了帮助读者扎实地掌握每章节的知识要点,在结尾处还精心设置了相应习题。还随书附带答案和讲解。这本书是编程学习系列的 “SQL和关系数据库” 篇。书籍秉承了注重对初学者编程能力的培养这一宗旨。不仅可以用于自学,也可以作为大学、专科学校和企业新人的培训用书。

让更多对SQL感兴趣的读者都能学会它。下面就来重点看看《SQL基础教程(第2版)》。除了封面上的小鹿变成了两只以外,我们再来了解一下它还有哪些新变化吧!

80%以上的程序员需要掌握这种计算机编程语言

  • 亚马逊五星畅销书!
  • SQL菜鸟晋级必备,资深数据库工程师总结的实用宝典
  • 72张图表 + 186段代码,明示各RDBMS的异同


MICK(作者)

日本资深数据库工程师,就职于SI企业,致力于商业智能和数据仓库的开发。为CodeZine(http://codezine.jp)及IT杂志 WEB+DB PRESS 撰写技术文章。著作有《跟达人学SQL》和《跟达人学DB设计》,是Joe Celko's SQL Puzzles and Answers , Second EditionJoe 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语言》等。

这本书是否适合你?

● 不了解数据库和SQL知识

● 虽然自学了一些SQL知识,但仍希望进行系统学习

● 需要使用数据库,但不知道从何入手

● 在大学、专科学校和企业的教育部门等从事数据库和SQL教学

● 希望了解信息处理考试中SQL部分应试策略

涉及哪些关系数据库

本书中使用的SQL 语句全部都在下列关系数据库管理系统(RDBMS)中进行了验证。

● OracleDatabase 12cR1

● SQLServer 2014

● DB2 10.5

● PostgreSQL 9.5.3

● MySQL 5.7

在这5 种RDBMS 之间存在差异的SQL 语句,或者只能在某种特定的RDBMS 中使用的SQL 语句,本书都用下列图标进行标识,来提示执行SQL 语句所使用的RDBMS。

反之,在所有RDBMS 中都能正常执行的SQL 语句则不用图标标识。

书籍的正确使用方式

首先,在第1 章前半部分学习关系数据库和SQL 的基础知识,然后结合具体的SQL 示例程序进行循序渐进的学习。

在SQL 的学习中,最重要的就是以下两点:

● 亲自编写SQL语句

● 通过执行SQL语句来学习和理解数据库操作

要提高学习效率,需尽量亲自执行并验证本书中的示例程序,逐步深入学习。为了便于初学者操作,本书使用PostgreSQL 作为SQL 语句的学习环境。在开始学习之前,读者需要先在自己的电脑上安装PostgreSQL,准备好SQL 语句的执行环境。

如无特殊说明,本书中出现的SQL 语句的执行结果,都是在PostgreSQL 9.5 中执行的结果。

本书中的示例程序都可以从下面的网站下载。

http://www.ituring.com.cn/book/1880

示例程序为压缩的Zip 文件形式,解压后的文件结构如下所示。

80%以上的程序员需要掌握这种计算机编程语言


ReadMe.txt文件

介绍了示例程序的内容和注意事项,使用前请务必阅读该文件。

Sample文件夹

本书中所使用的示例程序分别保存在以章节为单位的文件夹中。在Sample\CreateTable 文件夹中,按照RDBMS 的不同,分别保存了用来创建示例用表的SQL语句。

80%以上的程序员需要掌握这种计算机编程语言


Answer文件夹

各章末习题的答案(示例程序),分别保存在以章为单位的目录中。

通过目录了解这本书

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

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

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

第1章 数据库和SQL 13

1-1 数据库是什么 15

1-2 数据库的结构 20

1-3 SQL概要 25

1-4 表的创建 30

1-5 表的删除和更新 37

第2章 查询基础 43

2-1 SELECT语句基础 45

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

2-3 逻辑运算符 68

练习题 78

第3章 聚合与排序 79

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

3-2 对表进行分组 91

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

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

练习题 116

第4章 数据更新 117

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

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

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

4-4 事务 138

练习题 145

第5章 复杂查询 147

5-1 视图 149

5-2 子查询 160

5-3 关联子查询 168

练习题 173

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

6-1 各种各样的函数 177

6-2 谓词 198

6-3 CASE表达式 214

练习题 221

第7章 集合运算 223

7-1 表的加减法 225

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

练习题 254

第8 章 SQL高级处理 255

8-1 窗口函数 257

8-2 GROUPING运算符 271

练习题 282

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

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

9-2 Java基础知识 289

9-3 通过Java连接PostgreSQL 298

小结 307

练习题 307

附录 练习题答案 308

3. 其他关系数据库参考图书推荐

Oracle

  • 精通Oracle SQL(第2版)
  • Oracle编程艺术:深入理解数据库体系结构(第3版)
  • Oracle性能诊断艺术(第2版)

MySQL

  • MySQL必知必会
  • PHP与MySQL程序设计(第4版)

PostgreSQL

  • PostgreSQL即学即用(第2版)