Re: returning count(*) when it is > 1, else -1 - Mailing list pgsql-sql

From Richard Huxton
Subject Re: returning count(*) when it is > 1, else -1
Date
Msg-id 48F87E8A.1080103@archonet.com
Whole thread Raw
In response to returning count(*) when it is > 1, else -1  (Gerardo Herzig <gherzig@fmed.uba.ar>)
Responses Re: returning count(*) when it is > 1, else -1  (Gerardo Herzig <gherzig@fmed.uba.ar>)
Re: returning count(*) when it is > 1, else -1  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-sql
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

--  Richard Huxton Archonet Ltd


pgsql-sql by date:

Previous
From: "Pavel Stehule"
Date:
Subject: Re: returning count(*) when it is > 1, else -1
Next
From: Gerardo Herzig
Date:
Subject: Re: returning count(*) when it is > 1, else -1