У меня есть таблица, какЛучший способ создать процентные диапазоны в оракула 11gr2
Value Average Difference%
1 2 50
5.5 13 43
3 10 30
И я хочу, чтобы превратить это в нечто вроде
Difference Range #
0-30 1
41-50 2
Чтобы впоследствии сюжет, который в гистограмм, как граф ,
После того, как я написал типичный case when difference < 10 then 'under 10%' else when ... end
, я начал задаваться вопросом, есть ли лучший способ сделать это. Нашел PERCENT_RANK, который, казалось, шел именно так, но не совсем то, что я искал.
Было бы лучше, если бы шаг из бушует фиксировались, как, каждый 5%:
case
when dif_perc_med = 0 then 'Ok'
when dif_perc_med < 0.05 then 'até 5%'
when dif_perc_med < 0.1 then 'até 10%'
when dif_perc_med < 0.15 then 'até 15%'
when dif_perc_med < 0.2 then 'até 20%'
when dif_perc_med < 0.25 then 'até 25%'
when dif_perc_med < 0.3 then 'até 30%'
when dif_perc_med < 0.35 then 'até 35%'
when dif_perc_med < 0.4 then 'até 40%'
when dif_perc_med < 0.45 then 'até 45%'
when dif_perc_med < 0.5 then 'até 50%'
when dif_perc_med < 0.55 then 'até 55%'
when dif_perc_med < 0.6 then 'até 60%'
when dif_perc_med < 0.65 then 'até 65%'
when dif_perc_med < 0.7 then 'até 70%'
when dif_perc_med < 0.75 then 'até 75%'
when dif_perc_med < 0.8 then 'até 80%'
when dif_perc_med < 0.85 then 'até 85%'
when dif_perc_med < 0.9 then 'até 90%'
when dif_perc_med < 0.95 then 'até 95%'
else 'mais de 95%'end as rng_perc_dif
Любые идеи?
Может 'width_bucket' является то, что вы ищете? http://docs.oracle.com/cd/E11882_01/server.112/e41084/functions234.htm#SQLRF06163 –
именно то, что мне нужно. хотите превратить это в ответ? благодаря! – filippo