Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: bitwise or on column

Re: bitwise or on column

From: Stanislav Shydlovskyy <stax_at_lviv.eximb.com>
Date: 17 Jul 2002 05:38:56 -0700
Message-ID: <c422712f.0207170438.600ab294@posting.google.com>


Hi Stephan

"Stephan Bressler" <stephan.bressler_at_siemens.com> wrote in message news:<ah0r4e$a82$1_at_news.mch.sbs.de>...
> Hi all,
>
> I'm looking for a function doing a bitwise or on a column (number)
> containing permissions, e.g. 1=read, 2=write, 4=exec, ... (so 5 = exec+read
> permission).
> There are several rows per user and all permissions should be aggregated.
> The function should be used like
>
> select bitor(permissions)
> from acl
> where username='scott tiger';

select x,rtrim(
 decode(bitand(x,1),1,'read + ')||
 decode(bitand(x,2),2,'write + ')||
 decode(bitand(x,4),4,'exec + '),' + ')

from dummy where x<16
/

        X RTRIM(DECODE(BITAND(X,

--------- ----------------------
        1 read
        2 write
        3 read + write
        4 exec
        5 read + exec
        6 write + exec
        7 read + write + exec
        8
        9 read
       10 write
       11 read + write
       12 exec
       13 read + exec
       14 write + exec
       15 read + write + exec

15 rows selected.

> TIA
> Stephan

Stax Received on Wed Jul 17 2002 - 07:38:56 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US