В настоящее время я работаю с Oracle SQL, и мне нужна логика для извлечения определенного контрольного значения из набора данных.Как вычислить условный процентиль в Oracle SQL
Что у меня есть:
Article | Sales
1 | 5
2 | 0
3 | 2
4 | 9
........| ......
119 | 3
120 | 8
121 | 12
Что мне нужно: Я ищу топ 5% процентов статей и, в частности, наихудшая продажа одного из этого набора. Чтобы продолжить мой анализ, мне понадобится сумма продаж из этой статьи рядом с существующими столбцами.
Предполагая, что топ 5% статей продать 9, 12, 14, 14, 17 и 19 раз (с 9 является худшим из верхней 5%), таблица должны были бы выглядеть следующим образом:
Article | Sales | Benchmark
1 | 5 | 9
2 | 0 | 9
3 | 2 | 9
4 | 9 | 9
........| ......| ......
118 | 3 | 9
119 | 8 | 9
120 | 12 | 9
Любые советы о том, как я могу это сделать? Спасибо!
Удивительно, работает как шарм. Благодаря! – Berbatov
Зачем это делать вручную, а не с 'percentile_disc()'? Вы обнаружили, что он ведет себя неправильно? В противном случае это, безусловно, будет более эффективным и легким для чтения и обслуживания. И он должен быть включен в ответ вместе с ручным вычислением. – mathguy