【问题标题】:Postgresql invalid reference to FROM-clause entry for table errorPostgresql 对表错误的 FROM 子句条目的无效引用
【发布时间】:2021-10-29 15:19:17
【问题描述】:

我想运行这个查询,但是 PostgreSQL 一直给出“对表 ua 的 FROM 子句条目的无效引用”错误。

WITH Student as (
    SELECT COUNT(user_id) as Count,user_id
    FROM user_role 
    WHERE deleted_flag = false
    GROUP BY user_id
    HAVING COUNT(user_id) = 1 
    ORDER BY user_id
)
UPDATE user_account ua
SET university_id = university_id || 'S'
FROM Student s
INNER JOIN user_role ur ON ua.user_id = ur.user_id AND ur.deleted_flag = false AND ur.role_id = 10;
WHERE ua.user_id = s.user_id;

谁能帮我解决这个问题?谢谢!!!

【问题讨论】:

    标签: sql postgresql join sql-update


    【解决方案1】:

    ua 的条件需要在WHERE 子句中。您可以使用s.user_id 切换到“真实”连接条件:

    UPDATE user_account ua
        SET university_id = university_id || 'S'
        FROM Student s INNER JOIN
             user_role ur
             ON s.user_id = ur.user_id AND ur.deleted_flag = false AND ur.role_id = 10;
        WHERE ua.user_id = s.user_id;
    

    【讨论】:

      猜你喜欢
      • 2019-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-06
      相关资源
      最近更新 更多