Re: Unexpected Return from Function
От | Anthony Bouvier |
---|---|
Тема | Re: Unexpected Return from Function |
Дата | |
Msg-id | CBEBKIKGCCOCPDEMKBBJMEPKCAAA.anthony@developware.com обсуждение исходный текст |
Ответ на | Re: Unexpected Return from Function (Stephan Szabo <sszabo@megazone23.bigpanda.com>) |
Список | pgsql-sql |
That was the exact problem. Your help is much appreciated. Of course, after getting this solution working in respect to the concatenation, I realise I was going about this whole thing all wrong. I spent 6 hours trying to do the original with no luck, then came in today and created an AGGREGATE that does -exactly- what I wanted to do in the first place, and in a much simpler fashion. -----Original Message----- From: pgsql-sql-owner@postgresql.org [mailto:pgsql-sql-owner@postgresql.org]On Behalf Of Stephan Szabo Sent: Saturday, December 01, 2001 9:23 PM To: Anthony Bouvier Cc: pgsql-sql@postgresql.org Subject: Re: [SQL] Unexpected Return from Function On Sat, 1 Dec 2001, Anthony Bouvier wrote: > I have a FUNCTION: > > CREATE FUNCTION get_responsible(text) > RETURNS TEXT AS ' > DECLARE > responsible_list text; > my_record RECORD; > BEGIN > FOR my_record IN SELECT login FROM employee WHERE id IN (1,2) LOOP > responsible_list := responsible_list || '', '' my_record.login; > END LOOP; > RETURN responsible_list; > END; > ' LANGUAGE 'plpgsql'; > > The employee table is such: > > id | login > ------------- > 1 | anthony > 2 | mary > ------------- > > I expect the SQL statement "SELECT get_responsible('1,2')" to return > something like so: > > get_responsible > --------------- > anthony, mary > --------------- > > But instead I receive: > > get_responsible > --------------- > > --------------- You probably need to initialize responsible_list to an empty string. My guess is that it starts NULL and NULL concatenated with anything is still NULL. ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to majordomo@postgresql.org so that your message can get through to the mailing list cleanly
В списке pgsql-sql по дате отправления: