Re: default value returned from sql stmt - Mailing list pgsql-general

From Chris Angelico
Subject Re: default value returned from sql stmt
Date
Msg-id CAPTjJmqXdFXvtFh5PGGCXarcK+B=JqyvZB4kopNN25z50g=qhw@mail.gmail.com
Whole thread Raw
In response to default value returned from sql stmt  (David Salisbury <salisbury@globe.gov>)
Responses Re: default value returned from sql stmt  (David Salisbury <salisbury@globe.gov>)
List pgsql-general
On Fri, Mar 30, 2012 at 9:16 AM, David Salisbury <salisbury@globe.gov> wrote:
> development=# select  coalesce(anum,100) from t1 where anum = 4;

What you have there is rather different from COALESCE, as you're
looking for a case where the row completely doesn't exist. But you can
fudge it with an outer join.

Untested code:

WITH rowid AS (select 4 as anum) SELECT coalesce(anum,100) FROM rowid
LEFT JOIN t1 ON rowid.anum=t1.anum

However, you may simply want a WHERE [NOT] EXISTS predicate. There may
be other ways of achieving your goal, too.

ChrisA

pgsql-general by date:

Previous
From: David Salisbury
Date:
Subject: default value returned from sql stmt
Next
From: Pavel Stehule
Date:
Subject: Re: default value returned from sql stmt