Re: How to force Postgres to calculate MAX(boolean)

From: Christopher Browne <cbbrowne(at)acm(dot)org>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: How to force Postgres to calculate MAX(boolean)
Date: 2005-07-07 17:10:07
Message-ID: m3pstupmog.fsf@mobile.int.cbbrowne.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

> I try to convert code from other database to Postgres.
>
> CREATE TABLE test(test BOOLEAN);
> SELECT MAX(test) FROM test;
>
> causes error
>
> ERROR: function max(boolean) does not exist
> HINT: No function matches the given name and argument types. You may need
> to add explicit type casts.
>
> I tried
> SELECT MAX(test:integer)::boolean FROM test;
>
> but this casuses error
>
> ERROR: cannot cast type boolean to integer
>
> I have lot of MAX() functions applied to boolean expressions.
>
> How to force Postgres to calculate MAX(boolean) ?
>
> MAX(boolean) should return true if its argument evaluates true for at least
> one row.
>

Have you looked into creating a suitable aggregate function yourself?

\h CREATE AGGREGATE

http://www.postgresql.org/docs/current/static/xaggr.html
--
output = reverse("gro.gultn" "@" "enworbbc")
http://linuxdatabases.info/info/rdbms.html
"The test of a principle is whether it applies even to people you
don't like." -- Henry Spencer

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Clark Allan 2005-07-07 18:22:38 table name as variable within Function
Previous Message David Pratt 2005-07-07 16:37:07 Re: Transparent i18n?