Sql 更新表增量字段

Sql 更新表增量字段,sql,sql-server-2008,Sql,Sql Server 2008,使用SQLServer2008 大家好,这里有个问题: CREATE PROCEDURE [dbo].[GenerateNumbers] @pg varchar(255) AS BEGIN DECLARE @Counter as int SET @Counter = 0 UPDATE dbo.paretoMain SET @counter = NewPareto = @counter +1 WHERE PG = @pg END 工作很好,只是我希望它按1列的特定顺序执行此操作。基本上

使用SQLServer2008

大家好,这里有个问题:

CREATE PROCEDURE [dbo].[GenerateNumbers]
@pg varchar(255)
AS
BEGIN
DECLARE @Counter as int
SET @Counter = 0
UPDATE dbo.paretoMain

SET @counter = NewPareto = @counter +1  
WHERE PG = @pg


END
工作很好,只是我希望它按1列的特定顺序执行此操作。基本上按第1列排序

我想不出怎么会有什么想法

谢谢大家

编辑:

好吧,看来我把人搞糊涂了,就这样吧

表中有3列。1名为“新帕累托”,1名为“销售”,1名为“零件”。 销售有货币,部分是varchar。纽帕雷托是空白的

我只想用100个数字表示100条记录(示例),所以当行1时,Newpareto=1。 我提供的这个查询就是这样做的。 然而。这100条记录没有排序。我需要的是以某种方式将order by添加到order by Sales列中,以便在Newpareto列中排名第一的销售额(例如100.00英镑)。
有更清楚的吗

我相信这可能就是你想要做的:

update paretoMain
set NewPareto=rn
from (select Sales, row_number() over(order by Sales desc) as rn from paretoMain) as x
where paretoMain.Sales=x.Sales

您的意思是第1列可以升序或降序排列,您希望按照升序或降序排列吗?您的意思是要增加第1列吗?第1列是什么数据?不,我想把数字1-100放在名为Newpareto的列中。但是订单应该是由一个名为column 1的字段(实际上称为sales)订购的,您能举个例子吗?我不明白。两个字段,第一个是销售,第二个是新帕累托。销售有价值。纽帕雷托还没有。所以我运行我发布的查询,它每行输入1、2、3、4、5、6等等。但是,如果我在那里有另一列“column1”,如果我想让它按第1列升序排序,让我们假设一下。我将如何编辑查询以执行此操作。这有用吗?我想不出解决办法。如果有人能,请跳进来。SQL表中的列没有顺序,除非您引用的是主键的物理顺序。我认为您正试图通过“column1”中的行的值将“newpareto”增加到表的物理顺序中最后一个出现的值(假设Sales列上有一个唯一的主键)。是吗?没错,我在周末终于弄明白了。谢谢你的帮助,我会在你的答案上打勾