欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

大神,sql,更新一个几十万的数据

更新时间: 2014-01-05 02:10:14 责任编辑: Author_N1

 

在线等大神,求一个SQL,更新一个几十万的数据。
如表tabl1
 a1        a2        a3(用户)      
 77       123        01
 99       233        01
 99       233        01
 88       342        01
 88       342        01
```       ```       ```
 77       31         02 
 99       233        02
 99       233        02
 88       342        02
 88       342        02

修改为:
 a1        a2        a3(用户)      
 77       123        01
 99       123        01
 99       123        01
 88       123        01
 88       123        01
```       ```       ```
 77       31        02 
 99       31        02
 99       31        02
 88       31        02
 88       31        02
 
在oracle数据库下,写一个update语句,把a3相同的,且a1为77的a2字段覆盖到a2为99,88的a2字段。


--参考方法--

update tabl1 t1
set a2 = (select a2 from table1 t2 where t2.a3 = t1.a3 and t2.a1 = 77)


--参考方法--
update table1 t set t.a2 = (
select s.a2 from table1 s where s.a3 = t.a3 and s.a1 = 77
) where t.a1 in (98,99)
--参考方法--
 merge into t
 using (select a2, a3 from t where a1 = 77) t1
 on (t.a3 = t1.a3 and t.a1 in(99, 88))
 when matched then
   update set t.a2 = t1.a2;
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:10:14
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6461/
本文WWW.DOC100.NET DOC100.NET版权所有。