当前位置: 代码迷 >> Sql Server >> [加急] 查询和更新怎么同步进行
  详细解决方案

[加急] 查询和更新怎么同步进行

热度:337   发布时间:2016-04-24 09:04:28.0
[加急] 查询和更新如何同步进行?
如今有表(account)有如下字段
id int --主键
username varchar(50)
pwd varchar(50)
loadCount int --默认为0

需求如下:
查询出前10条记录,按loadCount升序
select * from account order by loadCount asc
同时被查询出来的这10记录需要更新loadCount=loadCount+1
update account set loadCount=loadCount+1


以上操作如何同时进行?
由于并发高,所以禁止用update account set loadCount=loadCount+1 where id in (id1,id2...)

求高效的SQL语句或存储过程,谢谢大牛们!
------解决思路----------------------
你是即要查询的结果,又要更新,是吗?
UPDATE T
SET loadCount=loadCount+1
OUTPUT DELETED.*
FROM(
SELECT TOP 10 * FROM account
ORDER BY loadCount DESC
)T
  相关解决方案