Re: bit/integer operations in postgres

Поиск
Список
Период
Сортировка
От Martijn van Oosterhout
Тема Re: bit/integer operations in postgres
Дата
Msg-id 20060101165913.GB627@svana.org
обсуждение исходный текст
Ответ на bit/integer operations in postgres  ("littlebutty" <littlebutty@gmail.com>)
Список pgsql-general
On Thu, Dec 22, 2005 at 05:04:30PM -0800, littlebutty wrote:
> HERE IS WHAT I WANT TO DO:
> How do I setup a postgres constraint that will not allow an insert on
> the permission table with an integer value that has more than one bit
> set.  In other words you could insert 1, 2, 4, 8, 16, 32, etc. because
> there is only a single bit on in all of those integers, but not insert
> 3, 5, 6, 7, 9, 15, 19, etc. because they have multiple???

Well, you could use the properties of two-complement arithmentic to do
it:

CHECK(value = (value & ((~value)+1)) )

Or perhaps you should look into the bit datatype with get_bit abd
set_bit.

Have a nice day,
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
> tool for doing 5% of the work and then sitting around waiting for someone
> else to do the other 95% so you can sue them.

Вложения

В списке pgsql-general по дате отправления:

Предыдущее
От: Leonel Nunez
Дата:
Сообщение: Re: storing PDFs
Следующее
От: Scott Ribe
Дата:
Сообщение: Re: storing PDFs