samedi 22 août 2015

create a histogram with a dynamic number of partitions in sqlite

I have a row x with integers in range 0 < x <= maxX. To create a histogram with five partitions of equal size I am using the following statement in sqlite

select case 
    when x > 0 and x <= 1*((maxX+4)/5) then 1
    when x > 1*((maxX+4)/5) and x <= 2*((maxX+4)/5) then 2
    when x > 2*((maxX+4)/5) and x <= 3*((maxX+4)/5) then 3
    when x > 3*((maxX+4)/5) and x <= 4*((maxX+4)/5) then 4
    else 5 end as category, count(*) as count
from A,B group by category

Is there a way to make a "dynamic" query for this in the way that I can create a histogram of n partitions without writing n conditions in the case-statement?

Aucun commentaire:

Enregistrer un commentaire