ADB不支持update Inner join的语法么?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云中的ADB数据库不支持update Inner join语法。Update Inner join语法是在两个表之间进行连接并更新数据的语法,但阿里云中的ADB并没有提供这个特性。
你可以使用其他的方式来实现update Inner join的功能,比如使用临时表来存储连接后的数据,再使用update语句来更新数据。
例如,如果我有两个表A和B,我想更新A表中的数据为B表中的数据,并且两个表都有一个id字段,我会使用以下语句:
create temporary table C as select A., B. from A inner join B on A.id = B.id;
update A set A.col1 = C.col1, A.col2 = C.col2 from C where A.id = C.id;
这条语句会将A表和B表中id相同的数据的col1,col2字段都进行更新.
但是但是这种方式可能会增加数据库的负担,所以在使用时需要根据实际需要进行优化.
阿里云自主研发的云原生数据仓库,具有高并发读写、低峰谷读写、弹性扩展、安全可靠等特性,可支持PB级别数据存储,可广泛应用于BI、机器学习、实时分析、数据挖掘等场景。包含AnalyticDB MySQL版、AnalyticDB PostgreSQL 版。