Iro*_*n84 2 sql t-sql sql-server stored-procedures
我正在为我的客户端编写一个存储过程来填充一些将在稍后用于生成SSRS报告的表.一些数据基于特定的库存公式,这些公式在客户的每个季度数据上运行(由客户发送给他们).通过将这些结果与来自其他类似大小的客户端的结果进行比较来生成数据的另一部分.他们想要在他们的报告中跟踪的事情之一是该特定比较组的公式结果的前25%的平均值.
为了更好地了解它,想象一下我在临时表中的以下字段:
FormulaID int
Value decimal (18,6)
Run Code Online (Sandbox Code Playgroud)
我想做以下几点:给出一个特定的FormulaID回报,前25%的平均值Value.
我知道如何在SQL中取平均值,但我不知道如何对抗特定组的前25%.
我该怎么写这个查询?
M.A*_*Ali 12
我猜你可以这样做......
SELECT AVG(Q.ColA) Avg25Prec
FROM (
SELECT TOP 25 Percent ColA
FROM Table_Name
ORDER BY SomeCOlumn
) Q
Run Code Online (Sandbox Code Playgroud)