Thread: turning a table by 90 degrees

turning a table by 90 degrees

From
news-list.pgsql.sql@innominate.de (Thilo Mezger)
Date:
hi,

i've got a table like this (plus a primary key and some other fields):

key      | value   | custid
---------+---------+---------
name     | peter   | 2
age      | 123     | 2
foo      | bar     | 2
[...]    |         |
name     | john    | 3
[...]

you can think of a table which is turned by 90 degrees.  this can be
quite useful when you don't know in advance what key/values pairs you
have to store.

now it would be nice to find a query which returns this result for
custid=2:

name  | age | foo
------+-----+------
peter | 123 | bar


any ideas?!

thilo


-- 
mezger@innominate.de                                                       innominate AG
                  networking people
 
fon: +49.30.308806-11 fax: -77 web: http://innominate.de pgp: /pgp/tm


Re: [SQL] turning a table by 90 degrees

From
Peter Eisentraut
Date:
On 1999-12-08, Thilo Mezger mentioned:

> hi,
> 
> i've got a table like this (plus a primary key and some other fields):
> 
> key      | value   | custid
> ---------+---------+---------
> name     | peter   | 2
> age      | 123     | 2
> foo      | bar     | 2
> [...]    |         |
> name     | john    | 3
> [...]
> 
> you can think of a table which is turned by 90 degrees.  this can be
> quite useful when you don't know in advance what key/values pairs you
> have to store.
> 
> now it would be nice to find a query which returns this result for
> custid=2:
> 
> name  | age | foo
> ------+-----+------
> peter | 123 | bar

I don't see why a table
SELECT * FROM your_table WHERE custid = 2;
would be any different. Just switch the column and row addressing logic in
your application.

key      | value   | custid
---------+---------+---------
name     | peter   | 2
age      | 123     | 2
foo      | bar     | 2

There's really no way to do what you suggested.

-- 
Peter Eisentraut                  Sernanders väg 10:115
peter_e@gmx.net                   75262 Uppsala
http://yi.org/peter-e/            Sweden