SQL,全称为StructuredQueryLanguage(结构化查询语言)。要讲SQL就绕不开database(数据库),平时所说的数据库,一般就是指的Relationaldatabase(关系型数据库).
大家知道数据库是用来存储大量数据的一种软件,那么SQL呢是用来操作数据里的数据,具体来说SQL可以做数据查询,数据更新,写入数据等等。
大家应该或多或少听说过一些数据库比如SQLite,MySQL,Postgres,Oracle和MicrosoftSQLServer.这几个数据库(可以理解为软件)是目前比较流行的一些数据库。所有这些数据库都支持标准的SQL,换句话说,你学会了SQL就可以对这些数据库做数据操作了!当然上面的每一种数据库都有自己的特性和适用范围(想象一下你家有不同尺寸的盘子).
在学习SQL语法之前有必要解释一下什么是关系型数据库(Relationaldatabases)?数据库由若干张表(Table)组成,这里说的数据Table很像Excel里的表;正如Excel里的表格,Table也是由行(rows)和列(columns)组成
一个Table存储一个类别的数据,每一行是一条数据,每一列是这种数据的一个属性;Table就像一个二维的表格,列(columns)是有限固定的,行(rows)是无限不固定的
举个例子,比如我们数据库里有一张表(Table).是用来存储世界上所有的狗,每一行(rows)是一条狗的信息。那么你会在这个狗Table里存储哪些狗的属性列(columns)呢?比如编号,名字,体重,身高,品种,年龄,毛发颜色?。让我们来看一下这张表,暂且就叫表Dog吧!
上面就是一个Dog表的简单展示,像这样一个狗数据库里,除了这张狗(Dog)表,还可能存在其他的表,比如有一张表是存狗品种信息,另外有一张表是存狗主人信息的...
我们学习SQL,其实最后目的就是在类似这张Dog表数据基础上,可以通过SQL来回答诸如以下的一类问题:"现在全世界名字叫'Mike'的狗有几条",或者"有多少条狗的毛发是红色的",等等。通过SQL我们可以方便的去获取,统计这些信息,在接下来的更多章节中你会有更深的体会.
所有练习都会有表(Table)的数据展示,在表下方有一个可以输入SQL(SQL语句)的编辑器,您需要理解右侧的任务列表并写出正确的SQL.当然,您也可以直接在编辑器里输入其他的SQL,每次输入SQL都会立即执行,并把结果显示在表数据的位置!
第一次的练习很简单,您只需要按照任务列表里的SQL,在编辑器里抄一遍即可(抄完SQL注意下表格里的数据有何变化)。这个练习主要是希望你通过互动对SQL有一个初步映像.那让我们赶紧开始玩吧..
注意我们练习中的表不是狗表,而是一张存储了电影信息(movies)的表