使用 netezza 中的三个表进行更新
Update using three tables in netezza
我试图避免一个共同相关的子查询,这反过来又让我从三个不同的表进行更新,我不太确定如何使用 netezza 从三个表进行更新。
update stemp
set maxi = a.marks
from stemp
left join
sd696 sd
where st.id = sd.id
left join
(select id,MAX(marks) marks from sm696 group by ID) a
where a.id = sd.id;
请帮帮我
当您需要在 UPDATE 中进行连接时,连接在逗号分隔的 FROM 子句中隐式指定(无需再次指定 UPDATEd table),并在 WHERE 子句中指定 JOIN 条件。
您的更新看起来像这样:
UPDATE stemp
SET maxi = a.marks
FROM sd696 sd,
(
SELECT id,
MAX(marks) marks
FROM sm696
GROUP BY ID
)
a
WHERE stemp.id = sd.id
AND a.id = sd.id;
我试图避免一个共同相关的子查询,这反过来又让我从三个不同的表进行更新,我不太确定如何使用 netezza 从三个表进行更新。
update stemp
set maxi = a.marks
from stemp
left join
sd696 sd
where st.id = sd.id
left join
(select id,MAX(marks) marks from sm696 group by ID) a
where a.id = sd.id;
请帮帮我
当您需要在 UPDATE 中进行连接时,连接在逗号分隔的 FROM 子句中隐式指定(无需再次指定 UPDATEd table),并在 WHERE 子句中指定 JOIN 条件。
您的更新看起来像这样:
UPDATE stemp
SET maxi = a.marks
FROM sd696 sd,
(
SELECT id,
MAX(marks) marks
FROM sm696
GROUP BY ID
)
a
WHERE stemp.id = sd.id
AND a.id = sd.id;