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关系不存在。谁能帮帮我,它的语法错误在哪里?
如手册中所述 目标表的别名需要在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'))
目标表不能用于JOIN条件,所以将所有的连接条件移到WHERE子句中更容易。