两表关联更新
通用方法
| update test1 |
| set name=(select name from test2 where test2.id=test1.id), |
| age=(select age from test2 where test2.id=test1.id) |
MySql
| update test1,test2 |
| set test1.name=test2.name,test1.age=test2.age |
| where test1.id=test2.id |
Oracle
方法一:update
| UPDATE T1 |
| SET T1.FMONEY = (select T2.FMONEY from t2 where T2.FNAME = T1.FNAME) |
| WHERE EXISTS(SELECT 1 FROM T2 WHERE T2.FNAME = T1.FNAME) |
方法二:merge
| merge into t1 |
| using (select t2.fname,t2.fmoney from t2) t |
| on (t.fname = t1.fname) |
| when matched then |
| update set t1.fmoney = t.fmoney; |
方法三:内联视图更新
| UPDATE ( |
| select t1.fmoney fmoney1,t2.fmoney fmoney2 from t1,t2 where t1.fname = t2.fname |
| )t |
| set fmoney1 =fmoney2; |
两表关联删除
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?