Rank() 求算法或优化方案 毫无疑问,数据库本身处理比你在datatable中转换对象再操作效率高很多。如果只是取出部分数据,那么建议还是放在前台处理排序。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在更新时不建议写成一个update关联语句因为这样造成锁全表的机率加大,导致其它进程无法对表进行写操作,或其它进程有写操作时,造成当前操作的锁等待。可以将select的结果存放在一个临时表里,然后用while循环,进行逐条更新,这样不致于造成大量锁等待. 1.对要排序的15个列设置索引,第一个排序列设置为聚集索引.2.如果你的表有标识列,试试用临时表获取排列顺序,然后从临时表更新,如:select newrank =identity(int,1,1),aid=orderid*1 into # from orders order by requireddateupdate orders set rank1=(select newrank from # where aid=a.orderid) from orders ago 一个存储过程的语法问题,请教大家!! 怎么把从某个表中选出的记录。插入到另外一个表里去? SQL Server 2005 标准版安装后不能打开 是系统表坏了吗? win2003+ms sql server的问题?? MS SQL SERVER中的条件语句..... 我想用本机数据库修改另一台机子上的数据库中的数据,帮看下我的问题出在哪?这是怎么回事啊? 老问题,求统计数字的SQL语句!100分相送!不够再加! 如何update某列为具有相同项的结果。 多个小表中的数据汇总至一个大表中 SQL多表限制时间段查询统计数据 紧急求助,csv数据导入后部分数据丢失问题,请高手指教,先谢了!
因为这样造成锁全表的机率加大,导致其它进程无法对表进行写操作,或其它进程有写操作时,造成当前操作的锁等待。可以将select的结果存放在一个临时表里,然后用while循环,进行逐条更新,这样不致于造成大量锁等待.
2.如果你的表有标识列,试试用临时表获取排列顺序,然后从临时表更新,如:
select newrank =identity(int,1,1),aid=orderid*1 into # from orders order by requireddate
update orders set rank1=(select newrank from # where aid=a.orderid) from orders a
go