Re: Bitwise OR in a group statement

Поиск
Список
Период
Сортировка
От Florian G. Pflug
Тема Re: Bitwise OR in a group statement
Дата
Msg-id 449A748D.4090504@phlo.org
обсуждение исходный текст
Ответ на Bitwise OR in a group statement  ("Greg Gazanian" <ggazan@ausd.net>)
Список pgsql-general
Greg Gazanian wrote:
> I was wondering if anyone happens to know whether there is an Aggregate function available in Postgres that can do an
ORon a column of the bit varying type. For example I would like to do something as follows: 
>
> bitstring
> *--------
> 1110
> 0100
> 1111
>
> SELECT bitwise_or(bitstring) FROM table;
>
> Resulting in:
> 1111
There is no such function predefined, but you can easily define one
yourself.

create aggregate or_bit64(
   basetype=bit,
   sfunc=bitor,
   stype=bit,
   initcond=
     '0000000000000000000000000000000000000000000000000000000000000000'
) ;

I'm using this in production, and it works fine. I didn't find a way to
make this length-agnostic, so I defined this for all lenghts of
bitstrings the my app uses (32 and 64).

greetings, Florian Pflug


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

Предыдущее
От: brian ally
Дата:
Сообщение: Re: Help from Havana
Следующее
От: Kenneth Downs
Дата:
Сообщение: Re: Return the primary key of a newly inserted row?