Search Postgresql Archives

Re: character varying == text?

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

 



On Mon, 2005-09-19 at 12:54, Alex Turner wrote:
> I thought a char field was supposed to return a padded string, and
> varchar was supposed to return a non-padded string?
> 
> I just checked though:
> 
> create table test (
> stuff char(10)
> );
> 
> insert into test values ('foo');
> 
> select stuff || 'lemon' from test;
> 
> This returns 'foolemon', not 'foo        lemon' as I would have
> expected.
> 
> Alex Turner
> NetEconomist
> 
> On 9/15/05, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
>         CSN <cool_screen_name90001@xxxxxxxxx> writes:
>         > Just something I was curious about - is there any
>         > difference at all between "character varying" (in the 
>         > SQL spec) without a length specified and "text" (not
>         > in the SQL spec)?
>         
>         The SQL standard doesn't allow "character varying" without a
>         length spec.
>         
>         But yeah, in Postgres they're essentially the same thing. 
>         
>                                 regards, tom lane
>         
>         ---------------------------(end of
>         broadcast)---------------------------
>         TIP 9: In versions below 8.0, the planner will ignore your
>         desire to
>                choose an index scan if your joining column's datatypes
>         do not 
>                match
> 

That's because || is a text operator, not a char operator here.  So,
what's really happening is:

select cast(charfield as text)||cast(textfield as text)



---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

[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