Możesz także użyć NTILE
funkcja okna do grupowania wyników w 10 grup danych - grupa nr. 1 będzie najniższym 10%, grupa nr. 10 to najlepsze 10%:
;WITH Percentile AS
(
SELECT
Score,
ScoreGroup = NTILE(10) OVER(ORDER BY Score)
FROM
test
)
SELECT *
FROM Percentile
WHERE ScoreGroup IN (1, 10)