结构化查询语言(SQL)介绍
SQL是对关系数据库管理系统进行查询和操作的语言。是对关系代数的一种具体实现(可能并不包含关系代数中的所有操作)。SQL包含两个主要部分:
-
数据定义语言(Data Definition Language,DDL),用于定义数据库结构和数据的访问控制。
-
数据操作语言(Data Manipulation Language, DML),用于检索和更新数据。
SQL是非过程化语言,用户只需描述所需的信息,不需要给出获取该信息的具体过程,即SQL不需要指定数据的访问方法。
SQL 简单查询举例
SQL中最简单的查询是找出关系中满足特定条件的元组。简单查询使用代表SQL特点的三个保留字SELECT、FROM和WHERE来表示。例如,从关系weather中找出杭州在2020-07-01这天的天气信息,其SQL语句为:
SELECT * FROM weather
WHERE city = '杭州' AND date = DATE '2020-07-01';
该查询展示了大部分SQL查询语句的典型格式,即select-from-where形式。
-
FROM子句给出查询所引用的关系,在本例 中查询引用的关系是weather。
-
WHERE子句是一个条件子句,就像关系代数中的选择条件。和查询匹配的元组必须满足此条件。在本例中,条件是元组的city属性(值为'杭州')和date属性(值为DATE '2020-07-01')。
-
SELECT子句决定满足条件元组的哪些属性应该在结果中列出。例子中的*表示列出元组的所有属性。
需要了解更多的关于SQL语言方面的内容,推荐查阅《Database in Depth》。