提要: 在本教程中,您将学习如何使用基本的 PostgreSQL SELECT 语句来查询表中的数据。

在使用 PostgreSQL (其它关系型数据库也一样)的时候,通过 SELECT 语句来查询数据是最常用的命令之一。SELECT 语句是 PostgreSQL (其它关系型数据库也一样)中最复杂的语句之一。它有很多部分,你可以结合起来形成一个强大的查询。

由于其复杂性,我们将 PostgreSQL SELECT 语句教程分成很多较短的教程,以便您可以更轻松地学习 SELECT 语句的每个子句。

以下是可以出现在 SELECT 语句中的子句:

本节中,我们将聚焦 SELECTFROM 子句。

PostgreSQL SELECT 语句的语法

我们通过使用 SELECT 从单个数据表中接收数据开始我们的学习。

SELECT 语句的基本语法如下:

SELECT 
    field_1,
    field_2,
    ...
FROM
    table_name;

解释一下这个基本语法:

  • 首先,在 SELECT 之后指定了需要查询数据的字段。如果想接收多个字段的数据,需要使用英文逗号(,)来分隔不同的字段名。如果要查询所有字段的值,可以简单的使用英文星号(*)——虽然不建议这么做。
  • 然后,在 FROM 后面指定了数据表的名字。

提示:SQL 语言是不区分大小写的。就是说,SELECTselect 的效果一样。但是,数据库中的对象名是区分大小写的(在Linux系统里)。所以,我们建议,对于 SQL 语言的部分,始终使用大写,而对于数据库中的对象名,始终使用小写。

PostgreSQL SELECT 示例

现在,我们来看一下 SELECT 语句的示例。我们将使用示例数据库 中的 customers 表进行演示。该表的结构如下:

customers表结构

你可以使用下面的语句来查询customers 表里所有字段的所有记录:

SELECT * FROM customers;

customers表查询查结

注意,我们在 SQL 语句后面加了分号。分号不是 SQL 语句的一部分,它只是告诉 PostgreSQL,我们的 SQL 语句写完了。

SELECT 中使用 * 是非常不推荐的做法。强烈建议:SELECT 中,总是显式指定字段列表,而不是使用 *

如果,只想获取客户的名字(first_name)、姓氏(last_name)和邮箱(email),可以这样写 SELECT 语句:

SELECT first_name, last_name, email FROM customer;

customers表指定字段查询查结

相关主题