日期:2014-05-18  浏览次数:20368 次

如何通过一个字段的顺序来修改同一张表中另一个字段的值。
我现在有一张content表,里面包含DOCID,ORDERID,RELTIME三个字段。 DOCID是从1自动增长的,ORDERID是用来排序的,RELTIME是撰写时间。

我现在的需求是通过判断RELTIME的值(降序排列),来修改ORDERID中的值,默认从1开始。如何实现?

------解决方案--------------------
SQL code
update t 
set ORDERID=row 
from (select *,row=row_number()over(order by RELTIME desc,ID desc) from content)t