【问题标题】:missing FROM-clause entry for table when joining tables连接表时缺少表的 FROM 子句条目
【发布时间】:2020-02-22 12:18:36
【问题描述】:

我正在尝试加入两个表并遵循每一步,但我不断收到此错误“缺少表“涡轮增压器”的 FROM 子句条目。我有两个表:涡轮增压器和引擎。
这是查询:

SELECT *
FROM "Engine"
FULL OUTER JOIN "Turbocharger" ON Turbocharger.Manufacturer_ID = Engine.Manufacturer_ID;

【问题讨论】:

标签: postgresql


【解决方案1】:

很可能您已经创建了带引号的表(创建表“Turbocharger”) 在这种情况下,PostgreSQL 将始终希望使用 quoutes 访问此表,因为名称变得区分大小写。 所以你需要这个

SELECT * FROM "Engine" FULL OUTER JOIN "Turbocharger" ON "Turbocharger".Manufacturer_ID = "Engine".Manufacturer_ID;

但我建议使用别名

SELECT * FROM "Engine" e FULL OUTER JOIN "Turbocharger" t ON t.Manufacturer_ID = e.Manufacturer_ID;

HTH

【讨论】:

  • 好的,它不起作用然后我意识到我在列上也使用了引号,所以我必须在键中添加引号。但是当我尝试添加 PK 时,它会弹出相同的错误,但在选择部分
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-04-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多