Re: Trailing spaces - is there an easier way? - Mailing list pgsql-sql

From Pavel Stehule
Subject Re: Trailing spaces - is there an easier way?
Date
Msg-id AANLkTinNRgvDzk+=098PbtwzqUPxhs9DyrwTgYULjRhc@mail.gmail.com
Whole thread Raw
In response to Trailing spaces - is there an easier way?  ("Dean Gibson (DB Administrator)" <postgresql@ultimeth.com>)
Responses Re: Trailing spaces - is there an easier way?  (Kenneth Marshall <ktm@rice.edu>)
List pgsql-sql
2010/11/4 Dean Gibson (DB Administrator) <postgresql@ultimeth.com>:
> I'm sure this has been asked before, but I couldn't find it:
>
> I have a "zzz CHAR (8)" field.  It needs to be CHAR because trailing spaces
> need to be ignored for most operations.  However, I need to concatenate it
> with another (literal) string and need the spaces to be significant in that
> operation.  The ONLY WAY I could find to do it  in v9.0.1 was (represented
> in the following function):
>
> CREATE OR REPLACE FUNCTION padded( field CHAR ) RETURNS TEXT
>     RETURNS NULL ON NULL INPUT
>     IMMUTABLE
>     LANGUAGE SQL AS $SQL$
>         SELECT RPAD( $1, OCTET_LENGTH( $1 ) )
>     $SQL$;
>
> And then of course I write:
>
> SELECT padded( zzz ) || '/' || ...
>
> Is there a better way?
>
>

nic=# SELECT 'AAAA    '::char(6) || 'bbbb';?column?
----------AAAAbbbb
(1 row)

Time: 2.710 ms
nic=# SELECT 'AAAA    '::char(6)::cstring || 'bbbb'; ?column?
------------AAAA  bbbb
(1 row)


regards

Pavel Stehule


pgsql-sql by date:

Previous
From: "Dean Gibson (DB Administrator)"
Date:
Subject: Trailing spaces - is there an easier way?
Next
From: Kenneth Marshall
Date:
Subject: Re: Trailing spaces - is there an easier way?