Re: returning count(*) when it is > 1, else -1

From: Achilleas Mantzios <achill(at)matrix(dot)gatewaynet(dot)com>
To: pgsql-sql(at)postgresql(dot)org
Cc: Gerardo Herzig <gherzig(at)fmed(dot)uba(dot)ar>, Richard Huxton <dev(at)archonet(dot)com>, pavel(dot)stehule(at)gmail(dot)com
Subject: Re: returning count(*) when it is > 1, else -1
Date: 2008-10-17 12:28:59
Message-ID: 200810171529.00514.achill@matrix.gatewaynet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Στις Friday 17 October 2008 15:11:10 ο/η Gerardo Herzig έγραψε:
> Richard Huxton wrote:
> > Gerardo Herzig wrote:
> >> But it does a doble count(*) that i must avoid.
> >> I cant refer to the 'first' count like
> >> select case when (select count(*) from test where id=$1 ) AS total
> >> > 0 then total
> >> else -1
> >> end;
> >
> > SELECT
> > CASE WHEN total >0 THEN total ELSE -1 END AS new_total
> > FROM (
> > SELECT count(*) AS total FROM test WHERE id=$1
> > ) AS raw_total
> >
> Pavel, Richard, you got it dudes! I have to say, that kinda 'reference
> before assingment' of "total" doesnt look logical to me.
>

Then, both you and your boss need some SQL courses :) (no offense)

> Thanks again!!
> Gerardo
>

--
Achilleas Mantzios

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Tom Lane 2008-10-17 12:32:32 Re: returning count(*) when it is > 1, else -1
Previous Message Gerardo Herzig 2008-10-17 12:27:15 Re: returning count(*) when it is > 1, else -1