Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Histogram/Bucketizing resultset
in article 3DC352BB.C4BF69FA_at_drew.edu, Steve Kass at skass_at_drew.edu wrote on
11/1/02 8:21 PM:
> No reason not to have a database in front of you - the enterprise evaluation > edition of SQL Server is free and lasts for 120 days... > > http://www.microsoft.com/sql/evaluation/trial/
Hmm - won't run on my MAC's at home, unfortunately :-)
> > Anyway, one way or another, if you find a better solution to the bucketing, > let us know. >
Here's the Oracle one - note the following (self imposed) rules
Here's the single SQL statement
SELECT TO_CHAR(b.l+((b.u-b.l)/&i * (b.n-1)))
||' - '|| TO_CHAR(b.l+((b.u-b.l)/&i * b.n )) Range, b.c Count FROM (SELECT max(bound.upper) u, min(bound.lower) l, width_bucket(age,bound.lower,bound.upper,&i) n, count(*) c FROM (SELECT max(age)+1 upper,min(age) lower FROM t) bound, t GROUP BY width_bucket(age,bound.lower,bound.upper,&i)) b
Testing it on Oracle9i Release 2 shows as follows
DROP TABLE t;
Table dropped.
CREATE TABLE t AS SELECT age FROM odm_mtr.census_2d_apply_unbinned;
Table created.
SELECT min(age), max(age), count(*) FROM t;
MIN(AGE) MAX(AGE) COUNT(*)
---------- ---------- ----------
17 90 1226
Enter Number of Buckets Required: 10
RANGE COUNT -------------------- ---------- 17 - 24.4 179 24.4 - 31.8 232 31.8 - 39.2 241 39.2 - 46.6 218 46.6 - 54 160 54 - 61.4 116 61.4 - 68.8 53 68.8 - 76.2 17 76.2 - 83.6 7 83.6 - 91 3
10 rows selected.
Enter Number of Buckets Required: 20
RANGE COUNT -------------------- ---------- 17 - 20.7 77 20.7 - 24.4 102 24.4 - 28.1 118 28.1 - 31.8 114 31.8 - 35.5 123 35.5 - 39.2 118 39.2 - 42.9 101 42.9 - 46.6 117 46.6 - 50.3 107 50.3 - 54 53 54 - 57.7 64 57.7 - 61.4 52 61.4 - 65.1 40 65.1 - 68.8 13 68.8 - 72.5 11 72.5 - 76.2 6 76.2 - 79.9 3 79.9 - 83.6 4 83.6 - 87.3 1 87.3 - 91 2
20 rows selected.
> > SK > > Mark Townsend wrote: > >> in article B9E741D5.C3D%markbtownsend_at_attbi.com, Mark Townsend at >> markbtownsend_at_attbi.com wrote on 10/31/02 8:24 PM: >>
>> >> Apologies - I just realized I missed the most significant part of your >> follow up post >> >>>> Assume that the lower bound and the upper bound is not preset >> >> I'll need to think about this a bit more, at the office, with a database in >> front of me.Received on Sat Nov 02 2002 - 13:56:54 CST