一尘不染

postgres:查询“从用户选择*”的实际作用是什么?

sql

在psql中,如果键入“从用户中选择*”,您将得到类似以下的内容:

 current_user 
--------------
 postgres

在这种情况下,用户是什么?


阅读 163

收藏
2021-03-10

共1个答案

一尘不染

在这种情况下,user是内部保留的Postgres函数,它代表当前登录到数据库的用户。

该查询也可以写成:

SELECT user;

哪个应该产生相同的结果。请注意,如果您想实际引用或创建一个名为的表,user则必须使用引号或完全限定其所在的架构。例如:

CREATE TABLE "user"
(
  id int2 not null
);

可以工作,但是:

CREATE TABLE user
(
  id int2 not null
);

会产生错误。

这是其他系统信息功能的参考:

http://www.postgresql.org/docs/9.0/static/functions-
info.html

2021-03-10