本文介绍了使用连接更新 Redshift 表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有 3 张桌子 t1、t2 和 t3.t1 有 2 列-> id1, val1
I have 3 table t1, t2 and t3. t1 has 2 column-> id1, val1
t2 -> id2, val2 t3 -> id3, val3 If id1=id2 and id2 = id3然后我需要更新 val1 和 val3.但是我重复了 id1 并且每个都应该有相同的 val3
then I need to update val1 ad val3. But I have repeating id1 and each should have same val3
我正在使用
update t1 inner join t2 on t1.id1 = t2.id2 inner join t3 on t2.id2 = t3.id3 set t1.val1 = t3.val3 ;但无法做到这一点.
推荐答案正确的语法是:
更新 table_name SET column = { 表达式 |默认 } [,...][来自来自列表][ WHERE 条件 ]
UPDATE table_name SET column = { expression | DEFAULT } [,...] [ FROM fromlist ] [ WHERE condition ]
所以你的 UPDATE 语句应该如下所示:
So your UPDATE statement should look as follows:
update t1 set val1 = val3 from t2 inner join t3 on t2.id2 = t3.id3 where t1.id1 = t2.id2 ;请参阅 Redshift 文档 及其全面的 UPDATE 示例.
See the Redshift documentation and their comprehensive UPDATE examples.
更多推荐
使用连接更新 Redshift 表
发布评论