0

我们使用以下脚本来计算中位数:

SELECT 
        [Period] = 'amountPeriodA',             
        [Median] = AVG(x.amountPeriodA)         
INTO    #mediantable
FROM (
        SELECT 
                r.customer,
                r.amountPeriodA,
                [RowASC] = ROW_NUMBER() OVER(ORDER BY r.amountPeriodA ASC, customer ASC),
                [RowDESC] = ROW_NUMBER() OVER(ORDER BY r.amountPeriodA DESC, customer DESC)
        FROM #MyExample r 
    ) x
WHERE RowASC IN (RowDESC, ROWDESC-1, ROWDESC+1)

是否可以概括这样的脚本,然后将其编码到服务器中,以便将来我们只需指定相应的表和列作为参数,结构返回Median

4

1 回答 1

0

我认为你需要的是一个stored procedure. 当您使用不同的参数多次执行相同的查询时,这很好。

是一个关于存储过程的好教程SQL SERVER

存储过程只不过是您保存的准备好的 SQL 代码,因此您可以一遍又一遍地重用代码。

于 2012-10-10T14:22:53.800 回答