我想弄清楚如何計算給定數據集的第95百分位數值。我可以使用下面的T-SQL從數據集中獲得第95百分位數值,但下面的代碼總是會給我數據集中的值。計算第95百分位值,但不一定從數據集
SELECT MIN(Value)
FROM
(
SELECT TOP 95 PERCENT WITH TIES Value
FROM [Sample].[dbo].[numbers]
ORDER BY Value DESC
) AS Temp
例如,對於該數據集23,5,11,22,25,14,第95百分位值是24.5%的Excel,但SQL Server不會返回該值,因爲它不在數據集中。
任何人都可以請建議,如果他們有任何建議?
在此先感謝您的幫助。
有百分之一以上的類型,所以你必須知道你想要哪一個。單獨使用sql可能是不可能的。當我不得不做這樣的事情時,我從sql獲得了記錄,並用ColdFusion計算了百分比。 –
你怎麼得到24.5? – sgeddes
@sgeddes。 。 。它正在對分配做出激進的假設。我認爲正確答案是25,這是SQL應該返回的內容。 Excel中插值的可能原因是在有偶數行時處理中位數。即便如此,兩個中間值之間的所有數字都是同樣有效的,所以有一個參數用於介於兩個中間值之間的任何值,甚至是兩個端點之一。 –