很多人在做数据的批量更新时..如果更新的内容是从其他表查出来的..很容易这么写.. UPDATE TABLE1 SET COLUMN1=(SELECT SUM(SOMETHING) FROM TABLE2 WHERE COLUMN2=TABLE1.COLUMN2) 这样的结构对于一般的小数据更新当然是没问题的..因为体现不出劣势.. 但是到了数据量大了的时候..特别在后边的查询时..量大并且结构复杂的时候.. 那一定会自食恶果..你就等吧..一条T-SQL执行个把小时..甚至计算速度后..发现要
update SO_Master set LotteryNo=t2.LotteryNo,UpdateTime=GETDATE() --select sm.LotteryNo,sm.SysNo,t2.LotteryNo from SO_Master sm inner join ( select SysNo,ROW_NUMBER() over(order by sysno asc) rIndex from SO_Master where WebSiteSysNo =6 and SOAmt >=800
回到目录 说它是批量操作,就是说将集合对象一次提交到服务器,并对数据进行持久化,如果您的代码是一次一次的提交,那不算是批量操作!在之前的mongodb仓储中并没有对批量更新和批量删除进行实现,而今天在项目中,还是实现了这种批量的操作,并且已经通过测试,下面公开一下源代码 public void Insert(IEnumerable<TEntity> item) { var list = new List<WriteModel<TEntity>>(); foreach (