From: Gurjeet Singh <singh.gurjeet@gmail.com>
To: Martijn van Oosterhout <kleptog@svana.org>
To: Henrique P Machado <zehrique@gmail.com>
To: Guy Rouillier <guyr-ml1@burntmail.com>
To: pgsql-general@postgresql.org, "Sandip G" <sandip@singapore.com>
Subject: Re: NEED URGENT HELP....
Date: Tue, 26 Dec 2006 20:39:01 +0530
Message-ID: <65937bea0612260709s6a4e0d16v375d401564569f22@mail.gmail.com> (raw)
In-Reply-To: <20061226115348.GB8412@svana.org>
References: <20061221074133.5B05A872DC@cal1-1.us4.outblaze.com>
<4590629B.9070808@burntmail.com>
<ef1265e0612251552v49d9179br98bc25799a24ad24@mail.gmail.com>
<20061226115348.GB8412@svana.org>
It works Martijn...
but with a few changes will be required in your function Sandip; you will
have to pass an ARRAY constructor and return a SETOF record. Here's a
sample:
postgres=> create table tab ( a int, b int );
CREATE TABLE
postgres=> insert into tab values ( 1, 9 );
INSERT 0 1
postgres=> insert into tab values (2,8);
INSERT 0 1
postgres=> insert into tab values (3,7);
INSERT 0 1
postgres=> insert into tab values (4,6);
INSERT 0 1
postgres=> insert into tab values (5,5);
INSERT 0 1
postgres=> create or replace function fun ( character varying [] ) returns
setof
tab as
postgres-> $$
postgres$> select * from tab where a = any ($1)
postgres$> $$ language 'sql' volatile;
CREATE FUNCTION
postgres=> select fun('{1}');
fun
-------
(1,9)
(1 row)
postgres=> select fun('{2,3}');
fun
-------
(2,8)
(3,7)
(2 rows)
postgres=>
Hope it helps....
On 12/26/06, Martijn van Oosterhout <kleptog@svana.org> wrote:
>
> On Mon, Dec 25, 2006 at 08:52:52PM -0300, Henrique P Machado wrote:
> > WHERE (USER_ID = $1) AND (COMPANY_ID = $2) AND BOOK_NO IN ($3)
> >
> > Could'nt he use an array in this 3rd parameter?
>
> I think so, if it's written:
>
> AND BOOK_NO = ANY($3)
>
> Have a nice day,
> --
> Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/
> > From each according to his ability. To each according to his ability to
> litigate.
>
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.1 (GNU/Linux)
>
> iD8DBQFFkQ1LIB7bNG8LQkwRApbCAJsH26IcDusO5Vi5kNC1UQ185usbnACeOxdC
> xQo+z5Z7+Xofks/h3MmeF7w=
> =Rq6g
> -----END PGP SIGNATURE-----
>
>
>
--
gurjeet[.singh]@EnterpriseDB.com
singh.gurjeet@{ gmail | hotmail | yahoo }.com
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: singh.gurjeet@gmail.com, kleptog@svana.org, zehrique@gmail.com, guyr-ml1@burntmail.com, sandip@singapore.com
Subject: Re: NEED URGENT HELP....
In-Reply-To: <65937bea0612260709s6a4e0d16v375d401564569f22@mail.gmail.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox