Re: Flattening a kind of 'dynamic' table - Mailing list pgsql-performance

From Merlin Moncure
Subject Re: Flattening a kind of 'dynamic' table
Date
Msg-id 6EE64EF3AB31D5448D0007DD34EEB3412A7611@Herge.rcsinc.local
Whole thread Raw
In response to Flattening a kind of 'dynamic' table  (Alexandre Leclerc <alexandre.leclerc@gmail.com>)
Responses Re: Flattening a kind of 'dynamic' table
List pgsql-performance
> Alexandre Leclerc wrote:
> Sorry for jumping in on this thread so late -- I haven't been able to
> select * from crosstab(
>    'select product_id, department_id, req_time
>     from product_department_time order by 1',
>    'select ''A'' union all select ''C'' union all select ''D'''
> ) as (product_id int, a int, c int, d int);

I forgot you could do this...This would certainly be easier than parsing
array values returned from array_accum.  It will probably be faster as
well...but with the array approach the query would not have to be
modified each time a new department was added.  That said, a crosstab
based query could be built easily enough from a department query on the
client and then you have the best of both worlds.

Merlin



pgsql-performance by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Planner really hates nested loops
Next
From: Alexandre Leclerc
Date:
Subject: Re: Flattening a kind of 'dynamic' table