7.1. 概述

从数据库中检索数据的过程或命令叫做 查询。 在SELECTSELECT命令用于 声明查询。SELECT命令的通用语法如下:

	[WITH with_queries] SELECT select_list FROM table_expression [sort_specification]
	

随后的几节将描述选择列表、表表达式、排序声明的细节。 WITH 查询被视为最后的,因为它们是一种先进的功能。

简单的查询的形式如下:

SELECT * FROM table1;

假设有一个table1表,这条命令将从table1中检索所有行和所有字段。 检索的方法取决于客户端的应用程序。比如,psql程序将在屏幕上显示一 个ASCII-art表格,客户端库将提供检索独立行和字段的函数。 选择列表声明为*表示表表达式提供的所有可用字段。一个选择列表也可以 选择可用字段的一个子集或者在检索它们之前对字段进行计算;比如,如果table1有 名为abc的字段(可能还有其它),那么你可以用下面的 语句进行查询(假设bc都是数字数据类型):

SELECT a, b + c FROM table1;

参阅节Section 7.3获取更多细节。

FROM table1是一种非常简单的表表达式:它只读取了一个表。通常,表表达式可以是基本 表、连接、子查询的复杂构造。但你也可以省略表表达式而只用SELECT命令当做一个计算器:

SELECT 3 * 4;

如果选择列表里的表达式返回变化的结果,那么这个东西就更有用了。比如,你可以用这个方法调用函数:

SELECT random();