Warm tip: This article is reproduced from serverfault.com, please click

sql-从PostgreSQL中的“全选”查询获取空行

(sql - Getting empty rows from "SELECT ALL" query in PostgreSQL)

发布于 2020-11-28 02:06:39

我在Windows上使用PostgreSQL服务器。我创建了表user(id,name,age)并在其中插入了一些数据。
当我想通过检索数据时,SELECT ALL FROM user我只会得到行数,而只是一无所有。

在psql CLI中的外观:
指令

...而且在我的nodejs应用中,我也收到了空对象数组作为查询结果:
在此处输入图片说明

Questioner
Ömer
Viewed
22
Gordon Linoff 2020-11-28 10:25:58

Postgres支持SELECT ALL作为-的同义词,SELECT作为与平行的两个词的语法SELECT DISTINCTALL不执行任何操作。

此外,与其他数据库不同,Postgres允许aSELECT不选择任何列。

所以:

SELECT ALL
FROM user;

从中选择所有user但不选择任何列。通常,你应该写:

SELECT *
FROM user;

查看行的内容。如果你想变得冗长,可以使用:

SELECT ALL *
FROM user;

但这在实践中几乎从未使用过。