sql 批量更新数据
有两个表A,B其中A表为基表,B为其子表,他们均有一个type字段需一SQL将B表中的type(对应A的id)修改为A表的type一次最多更新1000条数据,可能有几千条...
有两个表A,B
其中A表为基表,B为其子表,他们均有一个type字段
需一SQL将B表中的type(对应A的id)修改为A表的type
一次最多更新1000条数据,可能有几千条数据,请各位帮忙,有加分
1000 是DBA的限制,最多一次可更新1000条数据,如果超过1000,要分多个批次来执行
可以用循环来做吗?数据库为sybase
如果用游标,如何做? 展开
其中A表为基表,B为其子表,他们均有一个type字段
需一SQL将B表中的type(对应A的id)修改为A表的type
一次最多更新1000条数据,可能有几千条数据,请各位帮忙,有加分
1000 是DBA的限制,最多一次可更新1000条数据,如果超过1000,要分多个批次来执行
可以用循环来做吗?数据库为sybase
如果用游标,如何做? 展开
5个回答
展开全部
update a set a.type=b.type from b where a.id=b.id
为什么要一次更新1000条那,如果你硬是想要那样更新那就在加上个条件如下
update a set a.type=b.type from b where a.id=b.id
and a.id in(select top 1000 a.id from a,b where a.id=b.id and a.type!=b.type)
为什么要一次更新1000条那,如果你硬是想要那样更新那就在加上个条件如下
update a set a.type=b.type from b where a.id=b.id
and a.id in(select top 1000 a.id from a,b where a.id=b.id and a.type!=b.type)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2017-08-14
展开全部
给你写个sqlserver的,其他数据库的话另说
1
update table2 set pwd=table1.ip from table1 inner join table2 on table1.username=table2.username
1
update table2 set pwd=table1.ip from table1 inner join table2 on table1.username=table2.username
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
update B set type = (select type from A where A.id=B.id ) where rownum < 1001
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
update t1 set type=t2.type from B t1
inner join A t2 on t1.type=t2.id
inner join A t2 on t1.type=t2.id
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
游标好了.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询