Re: Error in crosstab using date_trunc

From: Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com>
To: Jose Maria Terry Jimenez <jtj(at)tssystems(dot)net>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Error in crosstab using date_trunc
Date: 2009-12-06 03:13:25
Message-ID: dcc563d10912051913qde052d7gd25cef544b1ebf0b@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Sat, Dec 5, 2009 at 12:11 PM, Jose Maria Terry Jimenez
<jtj(at)tssystems(dot)net> wrote:
> Hello all,
>
> I'm trying to do a crosstab from data that row names are times.
>
> These times are timestamps and  i  want to  use they truncating to minutes
>  this works for me:
>
> select distinct date_trunc('minute',"timestamp") as "timestamp" from
> historico order by "timestamp";
>
> Getting times "normalized" without seconds.
>
> If i do a crosstab using that date_trunc function i get errors. If i do:
>
> select *
> from crosstab
> (
> 'select date_trunc('minute',"timestamp") as "timestamp",remota,valor from
> historico order by 1,2'
> )
> as
> (anet timestamp without time zone,
> re1 numeric,
> re2 numeric,
> re3 numeric
> )
> ;

Looks like an escaping issue. Try replacing your outer ' with $outer$
or something like that:

select *
from crosstab
(
$outer$ select date_trunc('minute',"timestamp") as "timestamp",remota,valor from
historico order by 1,2 $outer$
)
as
(anet timestamp without time zone,
re1 numeric,
re2 numeric,
re3 numeric
)
;

And see if that helps.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Sim Zacks 2009-12-06 05:57:54 Re: numeric cast oddity
Previous Message Tom Lane 2009-12-06 03:10:07 Re: FATAL: no pg_hba.conf entry for host “::1”