这是在 Microsoft SQL Server 2008 R2 中完成的。
我将从一个示例表开始。
Organization | MoneyAmount | MoneyAmountAvg
ISD | 500 |
ISD | 500 |
ISD | 500 |
QWE | 250 |
ISD | 500 |
QWE | 250 |
OLP | 800 |
ISD | 500 |
我需要MoneyAmountAvg列的值为MoneyAmount/(# of times that organization shows up
例如,ISD行的MoneyAmountAvg列的值为100。
对于MoneyAmountAvg列中的每一行,QWE的值为125 ,而OLP的值为800,因为它只存在一次。
这只是一个示例表。实际的表要大得多,并且有更多的组织,但它具有相同的标准。一些组织有多个行,而其他组织只有一次。
当我为该组织的 MoneyAmountAvg 列使用更新语句时,我只需要一种方法来计算每个组织被列出的次数。为每个组织硬编码绝对不是一种选择,因为它们可以随时更改。
任何帮助表示赞赏。