從新排序

MySql:
update sys_dict sd,
       (select d.id,d.sort ,@rownum:=@rownum+1 as rowid 
        from (select @rownum:=0) a, sys_dict d
        order by d.sort) newSort 
set sd.sort = ((newSort.rowid)*10)
where sd.id = newSort.idsql

sqlServer:
update sd set sd.sort = (newSort.rowid)*10
from sys_dict sd,
(select ROW_NUMBER() over (order by sort) as rowid,id,sort from sys_dict) newSort
where sd.id = newSort.iddate


Oracle:
update sys_dict sd
set sd.sort = (select newSort.rn 
               from(select id,sort,rownum*10 as rn from sys_dict)newSort 
               where sd.id = newSort.id)select

相關文章
相關標籤/搜索