Dear list,

 

I recently discovered the crosstab function in postgresql.

What I’m trying to accomplish is turn this:

 

Suppliernumber Productnumber Price

0                      2                      0.8

0                      3                      1.2

1                      2                      0.9

1                      3                      1.1

 

Into this:

 

Productnumber  Supplier1           Supplier2

2                      0.8                    0.9

3                      1.2                    1.1

 

The problem is that the data is being shifted when there is no
price for Supplier1 for product 3:

 

Productnumber  Supplier1           Supplier2

2                      0.8                    0.9

3                      1.1(WRONG!)

 

I’m using this command to retrieve the data:

select * from crosstab('select int_artnr, int_crednr, flt_inkoopprijs from artcredinkoopprijzen where

int_crednr = 2 OR int_crednr = 3') as c(int_artnr integer, supp1 float4, supp2

float4); 

 

Am I doing something wrong or is this a limitation of the function?

 

With kind regards,

 

Paul                 

                       

Reply via email to