如何通过一个字段的顺序来修改同一张表中另一个字段的值。
我现在有一张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