Thread: Bitwise operators in SQL
I'm writing SQL code for dynamic page generation in PHP. I'd like to be able to determine whether a certain class of users has access to certain pages. I was thinking of doing it the usual way: set bitmasks, e.g. STUDENT=1, INSTRUCTOR=2, STAFF=4, etc., and store permissions from bitwise AND of applicable masks in the table that keeps info about each page. But the problem is that there are no bitwise operators among Postgres's supported operators. So, I cannot write something like select name from pages where access&2>0; Is there a standard way to approach this kind of problem? Many thanks, -- Arcady Genkin
Arcady Genkin writes: > But the problem is that there are no > bitwise operators among Postgres's supported operators. So, I cannot > write something like > > select name from pages where access&2>0; > > Is there a standard way to approach this kind of problem? Upgrading. -- Peter Eisentraut peter_e@gmx.net http://funkturm.homeip.net/~peter
Peter Eisentraut <peter_e@gmx.net> writes: > Arcady Genkin writes: > > > But the problem is that there are no > > bitwise operators among Postgres's supported operators. So, I cannot > > write something like > > > > select name from pages where access&2>0; > > > > Is there a standard way to approach this kind of problem? > > Upgrading. Indeed, thanks. I was reading the docs for 7.0, and didn't notice that 7.1 has bitwise operators. Thanks a lot, -- Arcady Genkin