Skip site navigation (1) Skip section navigation (2)

Re: postgresql function not accepting null valuesinselect statement

From: "Bart Degryse" <Bart(dot)Degryse(at)indicator(dot)be>
To: "Jyoti Seth" <jyotiseth2001(at)gmail(dot)com>
Cc: <pgsql-sql(at)postgresql(dot)org>
Subject: Re: postgresql function not accepting null valuesinselect statement
Date: 2008-02-25 08:05:07
Message-ID: 47C284BF.A3DD.0030.0@indicator.be (view raw or flat)
Thread:
Lists: pgsql-sql
In the documentation "IS NOT DISTINCT FROM" only appears in version 8.2
The 8.0 and 8.1 documentation only mentions "IS DISTINCT FROM".
http://www.postgresql.org/docs/8.2/static/functions-comparisons.html 
http://www.postgresql.org/docs/8.1/static/functions-comparisons.html 
http://www.postgresql.org/docs/8.0/static/functions-comparisons.html 
I haven't tried it, but probably replacing
     WHERE f.statecd IS NOT DISTINCT FROM p_statecd)
with
     WHERE not(f.statecd IS DISTINCT FROM p_statecd))
will do the same.
 

>>> "Jyoti Seth" <jyotiseth2001(at)gmail(dot)com> 2008-02-25 6:20 >>>
I have tried this, but it is showing following error:
ERROR: syntax error at or near "DISTINCT"
SQL state: 42601

Thanks,
Jyoti


-----Original Message-----
From: pgsql-sql-owner(at)postgresql(dot)org [mailto:pgsql-sql-owner(at)postgresql(dot)org] 
On Behalf Of johnf
Sent: Friday, February 22, 2008 10:01 PM
To: pgsql-sql(at)postgresql(dot)org 
Subject: Re: [SQL] postgresql function not accepting null values inselect
statement

On Friday 22 February 2008 01:35:47 am Bart Degryse wrote:
> Can you try this...
>
> CREATE OR REPLACE FUNCTION getfunctionaries(p_statecd integer)
>   RETURNS SETOF t_functionaries AS
> $BODY$
> DECLARE
>   rec t_functionaries%ROWTYPE;
> BEGIN
>   FOR rec IN (
>     SELECT f.functionaryid, f.category, f.description
>     FROM functionaries f
>     WHERE f.statecd IS NOT DISTINCT FROM p_statecd)
>   LOOP
>     return next rec;
>   END LOOP;
>   return;
> END;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE;
>
a newbie question.  Could you explain why yours works?  I don't understand
how 
it works if p_statecd = NULL


-- 
John Fabiani

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings


---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

               http://archives.postgresql.org ( http://archives.postgresql.org/ )

In response to

pgsql-sql by date

Next:From: Dean Gibson (DB Administrator)Date: 2008-02-25 21:08:07
Subject: Re: Bouncing replies [was: SQL standards in Mysql]
Previous:From: Robins TharakanDate: 2008-02-25 07:03:08
Subject: Re: postgresql function not accepting null values inselect statement

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group