我们有这样的查询:
SELECT t FROM articles t WHERE t.article_id = 59446
也称为:
SELECT articles FROM articles WHERE articles.article_id = 59446
我无法理解
SELECT articles FROM articles
这是什么意思?为什么它有效?
更新:表“文章”没有列“文章”
这是 Postgres 对象关系架构的结果。对于您创建的每个表,还有一个匹配的复合型同名。
当你跑步时
SELECT articles
FROM articles
您正在选择一个单列与type articles
从名为articles
。如果您密切关注该查询的输出,您会发现您的结果仅包含一个列,其中值括在括号中,例如(1,Foobar)
(如果表文章有两列)。如果你跑select * from articles
输出是two列(并且没有括号)
当您将列列表放在括号之间时,也会发生同样的情况:
select (article_id, article_name)
from articles
还返回一个single列有一个匿名复合类型包含两个字段(这也是一个很好的例子,“列”和“字段”不是同一件事)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)