从数据库中检索数据的过程或命令叫做查询。在 SQL 里 SELECT 命令用于声明查询。SELECT 命令的通用语法如下:
SELECT select_list FROM table_expression [sort_specification]
随后的几节将描述选择列表、表表达式、排序声明的细节。
简单的查询的形式如下:
SELECT * FROM table1;
假设有一个 table1 表,这条命令将从 table1 中检索所有行和所有字段。检索的方法取决于客户端应用程序。比如,psql 程序将在屏幕上显示一个 ASCII 艺术构成的表格,客户端库将提供检索独立行和字段的函数。选择列表声明为 * 表示表表达式提供的所有可用字段。一个选择列表也可以选择可用字段的一个子集或者在检索它们之前对字段进行计算;比如,如果 table1 有名为 a, b, c 的字段(可能还有其它),那么你可以用下面的查询(假设 b 和 c 都是数字数据类型):
SELECT a, b + c FROM table1;
参阅节7.3获取更多细节。
FROM table1 是一种非常简单的表表达式:它只读取了一个表。通常,表表达式可以是基本表、连接、子查询的复杂构造。但你也可以省略表表达式而只用 SELECT 命令当做一个计算器:
SELECT 3 * 4;
如果选择列表里的表达式返回变化的结果,那么这个东西就更有用了。比如,你可以用这个方法调用函数:
SELECT random();