SQL 更新 jira 的字段 table

SQL to update field of jira table

UPDATE cg
SET NEWSTRING = ''
FROM changegroup cg
inner join jiraissue i on cg.issueid = i.id
inner join project p on i.project = p.id
inner join changeitem ci on ci.groupid = cg.id AND ci.FIELD='Access Matrix Table'
inner join app_user au on cg.author = au.user_key
WHERE cg.issueid=(select id from jiraissue where issuenum = 124 and project in (select id from project where pname = 'NTW Customer Incident Management')) 

我有错误 cg 关系不存在。有人可以帮忙吗 它在语法上哪里不正确?

As documented in the manual目标的别名table需要在UPDATE部分提供,而不是FROM部分。

UPDATE changegroup cg
  SET NEWSTRING = ''
FROM jiraissue i, 
     project p, 
     changeitem ci, 
     app_user au 
WHERE cg.issueid = i.id 
  AND i.project = p.id
  AND ci.groupid = cg.id AND ci.FIELD='Access Matrix Table'
  AND cg.author = au.user_key
  AND cg.issueid = (select id 
                    from jiraissue 
                    where issuenum = 124 
                      and project in (select id 
                                      from project 
                                      where pname = 'NTW Customer Incident Management')) 

目标 table 不能在 JOIN 条件中使用,因此将所有连接条件移动到 WHERE 子句更容易。