我正在Heroku上制作一个带有postgres数据库的烧瓶应用程序。我使用JackDB作为gui。
我用什么postgresql查询来显示表格中的所有存储数据?
当我运行select * from user
时,我得到了(抱歉,因为低代表我无法发布截图):
id | current_user
1 | gmuchqmskrcijv
当我跑select column_name, data_type, character_maximum_length from INFORMATION_SCHEMA.COLUMNS where table_name = 'user'
时,我得到:
id | column_name | data_type | character_maximum_length
1 | id | integer | NULL
2 | email | character v..| 120
我只想列出“用户”表中存储的所有ids
和emails
。
答案 0 :(得分:2)
要查询名为user
的表格,您需要加倍引用它:SELECT * FROM "user"
USER
是reserved word in PostgreSQL。它是system information function,它返回执行查询的用户的名称。
作为内置函数,它的特殊之处在于您在调用时不指定括号。此外,它是CURRENT_USER
的别名,这就是为什么当您运行SELECT * FROM user
(而不引用它)时,会返回一个名为current_user
的列。
如果可能,您不应该使用保留字作为表名或列名,否则您必须在引用它们的所有SQL中引用它们。
答案 1 :(得分:0)
试试这个
select id,email from user;
或
select u.id,u.email from user u;