《SQL初学者指南(第2版)》第1章 关系型数据库和SQL

第1章 关系型数据库和SQL
SQL初学者指南(第2版)
正如前言中所提到的,在与关系型数据库中的数据进行交互的时候,SQL是使用最广泛的软件工具。在这方面,SQL利用了自身的语言和逻辑两方面的要素。作为一种语言,SQL的独特语法用到了很多的英语单词,诸如WHERE、FROM和HAVING。作为一种逻辑表达,它指定了在关系型数据库中检索和修改数据的细节。

考虑到了这两方面因素,我们在本书中介绍SQL的各个方面的时候,尝试强调语言和逻辑这两部分。在所有语言中,无论它们是计算机语言还是口语,我们都需要学习和记忆实际的单词。因此,我们以逻辑顺序来介绍SQL语句中出现的不同的关键字,并且每次介绍一个关键字。当学习完每一章之后,你就能够在之前的“单词量”的基础上,学习新的关键字以及使用它与数据库交互的激动人心的潜力。

除了单词本身,还有一些逻辑有待考虑。SQL语句使用的单词有独特的逻辑含义和意图。SQL的逻辑和语言一样重要。和所有的计算机语言一样,SQL经常使用不止一种方法来指定任何所需的目标。这些方法之间的细微差别,可能包括语言和逻辑两个方面。

让我们开始学习这门语言!在熟悉了SQL的语法之后,你可能会发现,SQL命令的思维方式和英语语句很类似,并且也能表达某种含义。

例如,对比下面这句话:

I would like a hamburger and fries
from your value menu,
and make it to go.

和这条SQL语句:

Select city, state
from Customers
order by state

这条SQL语句表示我们想要从数据库的Customers表中获取city和state字段,并且希望结果按照state来排序。我们稍后详细介绍这条语句的具体细节。

在这两个示例中,我们指定了想要的东西(hamburger/fries或city/state),从哪里获取(value菜单或Customers表),以及一些额外的指令(尽快去做或将结果按照state来排序)。

但是在开始之前,让我们先解决一个小问题:SQL这个单词是怎么念的?事实上有两种方法。一种方法是直接按照单个的字母来发音,就像“S-Q-L”。另一种选择,也是本书作者的首选,把这个单词读作“sequel”。这样少一个音节,也更容易读出来。然而,这个问题没有一个标准的答案。具体怎么念,实际上是个人的喜好。

大多数人都认同,字母S-Q-L的含义表示结构化查询语言(Structured Query Language)。然而,即使在这一点上,也并没有达成完全的共识。有些人认为SQL根本不表示任何含义,因为它是从一种叫做sequel的、古老的IBM语言派生而来,而这门古老的语言实际上并不代表结构化查询语言。

上一篇:docker-compose 源码分析


下一篇:AliRedis单机180w QPS, 8台服务器构建1000w QPS Cache集群(转)