On Fri, 5 Oct 2001, Oleg Lebedev wrote: > Hi, > I looked through PL/pgSQL tutorial, but I can't get quotes and spaces to > work in queries executed from Pl/pgSQl. Here is an example: > > create procedure get_name(varchar) > ... > BEGIN > query := ''SELECT first_name || '''' '''' || last_name FROM user''; > EXECUTE query; > ... > END; > ... > > Basically I want to get full name, i.e. first name separated with space from > the last name. If I follow the PL/pgSQL manual as shown above, I get parse > error. > What am I doing wrong?
Odd, a script like the following works for me on both 7.1 and 7.2devel: drop table aa; drop function fgn(varchar); create table aa(a varchar); insert into aa values ('d'); create function fgn(varchar) returns text as ' DECLARE query text; rec record; BEGIN query := ''SELECT a || '''' '''' || a as bar from aa;''; RAISE NOTICE ''%'', query; FOR rec in EXECUTE query LOOP return rec.bar; END LOOP; END;' language 'plpgsql'; select fgn('f'); ---------------------------(end of broadcast)--------------------------- TIP 6: Have you searched our list archives? http://archives.postgresql.org