Re: CHAR(n) always trims trailing spaces in 7.4

elein <elein@varlena.com>

From: elein <elein@varlena.com>
To: "scott.marlowe" <scott.marlowe@ihs.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, elein <elein@varlena.com>, "news.postgresql.org" <jlim@natsoft.com.my>, pgsql-sql@postgresql.org
Date: 2004-02-18T00:27:13Z
Lists: pgsql-hackers, pgsql-sql
Apparently the ::char is cast to varchar and then text?
That explains x || ' ' || x

On Tue, Feb 17, 2004 at 05:07:24PM -0700, scott.marlowe wrote:
> On Tue, 17 Feb 2004, Tom Lane wrote:
> 
> > elein <elein@varlena.com> writes:
> > > This is an example of the problem.  It used to expand
> > > the middle thing to 15.
> > 
> > > elein=# select 'x' || ' '::char(15) || 'x';
> > >  ?column? 
> > > ----------
> > >  xx
> > > (1 row)
> > 
> > Still does, but then the spaces go away again when the value goes into
> > the concatenation, because concatenation is a text operator.
> 
> But then this:
> 
> select 'x'||' '||'x'
> 
> should produce xx, but it produces x x.