Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Need SQL Example
"Post, Ethan" wrote:
>
> Anyone got a good example of flipping a range of values into columner
> buckets. I have done this in the past but my solutions always seem so
> convoluted, it seems I have seen more elegant examples in the past. I want
> to use decode so it will run on older versions of Oracle.
>
> Pseudo Example:
>
> select
> sum(decode(if value between 0 and 64 then return 1 else 0))
> count_of_this_bucket,
> sum(decode(if value between 65 and 128 then return 1 else 0))
> count_of_this_bucket,...
> from
> table
>
> Thanks,
> Ethan
select sum(decode(sign(value - 64), 1, 0, 1)) count_of_this_bucket,
sum(decode(sign(value - 129) * sign(value - 64), -1, 1, 0)) count_of_this_bucket,...
Not certain that it is as elegant as you wish, but easy to decline.
-- Regards, Stephane Faroult Oriole Corporation Voice: +44 (0) 7050-696-269 Fax: +44 (0) 7050-696-449 Performance Tools & Free Scripts -------------------------------------------------------------- http://www.oriole.com, designed by Oracle DBAs for Oracle DBAs -------------------------------------------------------------- -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Stephane Faroult INET: sfaroult_at_oriole.com Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists -------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Tue Jul 24 2001 - 12:27:59 CDT
![]() |
![]() |