4.2�基本结构

4.2.1 select-from-where

��SQL表达式的基本结构由select子句from子句where子句构成,其中where子句可以省略,如下所示:
Select A1, A2, …, An  对应投影,列出要显示的属性
From r1, r2, …, rm   对应笛卡尔积,对关系进行扫描
Where P        对应谓词,指出查询条件
上述SQL表达式用关系代数表达式进行表示,则如下所示:

与关系代数表达式不同的是,SQL的查询结果中允许有重复元组出现,为什么呢?原因就是在SQL的查询结果中去掉重复元组是一件非常耗时的工作,因此从性能的角度出发,只要不是特别指出,允许查询的结果中有重复元组存在。

��
��需要特别指出的是SQL的查询结果中允许有重复元组出现,原因就是在SQL的查询结果中去掉重复元组是一件非常耗时的工作,因此从性能的角度出发,只要不是特别声明,允许查询的结果中有重复元组存在。当然SQL也提供了去掉重复元组的方法(例如使用DISTINCT选项)。