Search Postgresql Archives

Re: concat strings but spaces

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Matthias Teege wrote:
I try to concat values from three fields in a function like this:

create or replace function fconcat_name(varchar, varchar, varchar) returns varchar as '
declare
ttl alias for $1;
vnm alias for $2;
nme alias for $3;
begin
return ttl || '' '' || vnm || '' '' || nme;
end;
' language plpgsql;


That works but if one of the fields is empty there are to much
spaces in the result. Is there any alternative to a monster
if-then construct?

Maybe like this:


create or replace function
 fconcat_name(varchar, varchar, varchar) returns varchar as '
     select replace($1 || '' '' || $2 || '' '' || $3, ''  '', '' '')
' language sql;

regression=# select fconcat_name('John','','Doe');
 fconcat_name
--------------
 John Doe
(1 row)

HTH,

Joe

---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
     joining column's datatypes do not match

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux