Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何更新SQL中的最大10个值_Sql - Fatal编程技术网

如何更新SQL中的最大10个值

如何更新SQL中的最大10个值,sql,Sql,我想通过向每个最大值添加一个来更新最大值10。但是我不知道如何编写SQL查询 我尝试创建一个包含10个最大值的新表,然后执行以下查询,但得到一个错误:column total不能为null update familyone set familyone.total = (select totalmax.total-1 from totalmax inner join (select * from familyone) as t on t.familyone_i

我想通过向每个最大值添加一个来更新最大值10。但是我不知道如何编写SQL查询

我尝试创建一个包含10个最大值的新表,然后执行以下查询,但得到一个错误:column total不能为null

update familyone
set familyone.total = 
     (select totalmax.total-1 
      from totalmax
      inner join (select * from familyone) as t on t.familyone_id2 = totalmax.familyone_id2
      where familyone.familyone_id2 = totalmax.familyone_id2)

有人能指出我的错误或想出其他解决方法吗?

请指定SQL的哪个版本。谢谢
;with a as
(
  select top 10 total 
  from familyone
  order by total desc
)
update a 
set total +=1