Re: concatenate question

From: Kenneth Marshall <ktm(at)rice(dot)edu>
To: Tony Capobianco <tcapobianco(at)prospectiv(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: concatenate question
Date: 2010-12-07 21:52:20
Message-ID: 20101207215220.GF4028@aart.is.rice.edu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

What does a 'timestamp || numeric' actually look like? It
means the timestamp written out a.k.a text and the same for
numeric. The database does not know that that is what you
wanted without the casts to text.

Cheers,
Ken

On Tue, Dec 07, 2010 at 04:47:46PM -0500, Tony Capobianco wrote:
> Ok, that worked. Why did I need to cast both as text though?
>
> plsql_dw=# select memberid::text||addeddate::text from
> tmpsv_parent_master limit 5;
> ?column?
> ------------------------------
> 4005941032010-11-16 19:32:17
> 4005941952010-11-16 19:33:29
> 4005942842010-11-16 19:34:32
> 4005943492010-11-16 19:35:22
> 4005943662010-11-16 19:35:37
> (5 rows)
>
> Thanks.
>
> On Tue, 2010-12-07 at 16:43 -0500, Peter Steinheuser wrote:
> > I think the HINT is what you need to look at.
> >
> > Cast both columns to text.
> >
> > On Tue, Dec 7, 2010 at 4:37 PM, Tony Capobianco
> > <tcapobianco(at)prospectiv(dot)com> wrote:
> > Here's my table:
> >
> > plsql_dw=# \d tmpsv_parent_master
> > Table "staging.tmpsv_parent_master"
> > Column | Type |
> > Modifiers
> >
> > ----------------+-----------------------------+-----------
> > memberid | numeric |
> > addeddate | timestamp without time zone |
> > sourceid | numeric |
> > regcomplete | numeric(1,0) |
> > optoutdate | date |
> > bouncedate | date |
> > websiteid | numeric |
> > emailbounced | numeric(2,0) |
> > emailok | numeric(2,0) |
> > emailaddress | character varying(50) |
> > srcwebsiteid | numeric |
> > srcmemberid | numeric |
> > sitetype | character varying |
> > commissionpct | numeric |
> > pricepermember | numeric |
> > acceptrate | numeric(3,2) |
> > mktgcenterid | numeric |
> > label | character varying(32) |
> >
> >
> > Why won't this work?
> > plsql_dw=# select memberid || addeddate from
> > tmpsv_parent_master
> > limit
> > 10;
> > ERROR: operator does not exist: numeric || timestamp
> > without
> > time zone
> > LINE 1: select memberid || addeddate from
> > tmpsv_parent_master
> > limit ...
> > ^
> > HINT: No operator matches the given name and argument
> > type(s).
> > You
> > might need to add explicit type casts.
> >
> > Thanks.
> >
> >
> > --
> > Sent via pgsql-sql mailing list (pgsql-sql(at)postgresql(dot)org)
> > To make changes to your subscription:
> > http://www.postgresql.org/mailpref/pgsql-sql
> >
> >
> >
> > --
> > Peter Steinheuser
> > psteinheuser(at)myyearbook(dot)com
>
>
>
> --
> Sent via pgsql-sql mailing list (pgsql-sql(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-sql
>

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Richard Broersma 2010-12-07 21:53:08 Re: concatenate question
Previous Message Dmitriy Igrishin 2010-12-07 21:51:20 Re: concatenate question