尝试使用左连接但遇到语法错误,

时间:2018-04-05 22:39:28

标签: sql postgresql

我正在尝试加入几列但在启动时遇到语法错误“ERROR:语法错误在或接近”id“  ON(E。“id”= F.“id”)“。任何人都可以告诉我我的查询有什么问题吗?

CREATE VIEW "VW_X" AS

SELECT *
FROM (SELECT "id",
    "name"
     FROM "TBL_A") E
LEFT JOIN (SELECT "id"
    "name",
    "school",
    "email",
    FROM "TBL_B") F
ON (E."id" = F."id")

2 个答案:

答案 0 :(得分:3)

在“电子邮件”之后你有一个额外的逗号,我猜这可能是你收到错误的原因。您还将在外部选择上有重复项(两个表上都有“id”和“name”)。

我认为你可以用更简单的方式编写查询:

CREATE VIEW "VW_X" AS
SELECT a.id,
       a.name as name_a,
       b.name as name_b,
       b.school,
       b.email
  FROM TBL_A a
  LEFT JOIN TBL_B b
    ON a.id = b.id;

答案 1 :(得分:1)

我认为你只是错误地把你的括号放在这个查询应该工作。 (我让你的查询更加简单)

SELECT a.id,
       a.name as name_a,
       b.name as name_b,
       b.school,
       b.email
         FROM TBL_A a
         LEFT JOIN TBL_B b ON a.id = b.id