Re: Re: Still don't know how to build this string ? how to concat ??

From: Andy Corteen <lbc(at)telecam(dot)demon(dot)co(dot)uk>
To: pgsql-sql(at)postgresql(dot)org
Subject: Re: Re: Still don't know how to build this string ? how to concat ??
Date: 2001-03-27 16:56:14
Message-ID: 2927997826.20010327175614@telecam.demon.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hello Andy,

Tuesday, March 27, 2001, 3:22:37 PM, you wrote:

AC> Tuesday, March 27, 2001, 10:20:18 AM, you wrote:

jrpc>> <snip...>

jrpc>> Result:
jrpc>> 01 1440
jrpc>> 02 1460
jrpc>> 03 1398

jrpc>> The values (1440, ...) are the last entries of z_u_umfang for each z_u_typ.
jrpc>> This is correct since in the function the list:= ... is overwritten until
jrpc>> the last record is read.
jrpc>> When I try to concat the list in the manner of list := list ||
jrpc>> text(rec.z_u_umfang); the zustring is empty !

jrpc>> Thanks for any help ... jr

jrpc>> Query :
jrpc>> select distinct z_u_typ, buildString(z_u_typ) as zustring from
jrpc>> zylinder_umfang

jrpc>> Function:
jrpc>> CREATE FUNCTION buildString(bpchar) RETURNS text AS '
jrpc>> DECLARE
jrpc>> list text;
jrpc>> rec record;
jrpc>> BEGIN
jrpc>> FOR rec IN SELECT z_u_umfang FROM zylinder_umfang WHERE z_u_typ
jrpc>> = $1;
jrpc>> list := text(rec.z_u_umfang);
jrpc>> END LOOP;
jrpc>> RETURN list;
jrpc>> END;
jrpc>> ' LANGUAGE 'plpgsql';

AC> You seem to be constantly re-assigning "list", rather than adding to
AC> it with each iteration of the "for loop".

AC> Would:
AC> ...
AC> list := list || ',' || text(rec.z_u_umfang)
AC> ...
AC> be what your solution is missing?

I read it again and noticed your comment about having tried || already
- I must learn to read messages fully...

But, I did wonder if the semicolon ";" at the end of the for loop is
what is causing your problem? The syntax explanation I have does not
show the ";", therefore it is possible that the loop is executing a
null instruction ";", moving on the the list assignment, and then
finding the unmatched "end loop" which might not throw an error.

Can anyone comment if this is a plausible explanation?

--
Best regards,
Andy mailto:lbc(at)telecam(dot)demon(dot)co(dot)uk

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message tjk@tksoft.com 2001-03-27 17:10:03 Re: Re: Still don't know how to build this string ? how to concat ??
Previous Message Tom Lane 2001-03-27 15:24:16 Re: Upgrading from 6.2 to 7