SQL代表结构化查询语言(Structured Query Language),是一种与存储在关系数据库中的数据进行交互的语言。
表(Table)的介绍
我们可以将关系数据库视为表的集合。
- 一个表只是一组行和列,就像一个电子表格一样,只代表一种类型的实体(entity)。例如,一个表可以表示公司的员工或交易情况,但不能同时表示这两种情况。
- 表的每一行或记录(record)都包含有关单个实体的信息。例如,在表示雇员的表中,每行表示一个人。
- 表的每一列或字段(field)都包含表中所有行的单个属性。例如,在表示员工的表中,我们可能有一列包含所有员工的名字和姓氏。
员工表可能如下所示:
id | name | age | nationality |
---|---|---|---|
1 | Jessica | 22 | Ireland |
2 | Gabriel | 48 | France |
3 | Laura | 36 | USA |
SELECT 语句
查询是从数据库表(或表的组合)请求数据。查询是数据科学家的一项基本技能,因为分析所需的数据通常存在于数据库中。
选择某一列
在SQL中,可以使用select
语句从表中选择数据。例如,以下查询从people
表中选择name
列:
SELECT name
FROM people;
在这个查询中,SELECT
和FROM
被称为关键字(keywords)。在SQL中,关键字不区分大小写,即上述代码与以下这个查询相同:
select name
from people;
因此,将SQL关键字大写是一种很好的做法,这可以将它们与查询的其他部分(如列名和表名)区分开来。此外,在查询的末尾加上分号也是一种很好的做法,这将告诉SQL查询的结束位置
选择多列
在现实世界中,通常需要用到多个列的数据,而这一点在SQL中很容易实现。
要从表中选择多列,只需用逗号分隔列名
例如,此查询从“people
”表中选择两列“name
”和“birthdate
”:
SELECT name, birthdate
FROM people;
有时,可能需要从表中选择所有列。这里则用到 select *
SELECT *
FROM people;
如果只想返回一定数量的结果,可以使用LIMIT
关键字限制返回的行数:
SELECT *
FROM people
LIMIT 10