[pgsql-jp: 30547] Re: 縦のデータを横に出力するSQL文

ながい fw-nagai @ infobb.com
2003年 7月 22日 (火) 13:32:55 JST


ながいです

和田さん、どうも有り難うございます
まさにやりたいことが出来ました!

まず同じテーブル同士を比較して順序付けを行う
んですね。

少しでも上達できるように勉強していきます。
本当にありがとうございました。


> まずviewを定義して、
> 
> create view pgsql30538v as
> select t1.key,t1.id,count(*) as no
> from pgsql30538 as t1, pgsql30538 as t2
> where t1.key=t2.key and t1.id >= t2.id
> group by t1.key,t1.id
> order by t1.key,t1.id
> 
> 結合します。
> 
> select distinct(t.key),t1.id,t2.id,t3.id,t4.id,t5.id
> from pgsql30538v as t
>  left join (select * from pgsql30538v where no=1) as t1 using(key)
>  left join (select * from pgsql30538v where no=2) as t2 using(key)
>  left join (select * from pgsql30538v where no=3) as t3 using(key)
>  left join (select * from pgsql30538v where no=4) as t4 using(key)
>  left join (select * from pgsql30538v where no=5) as t5 using(key)
> 
> このままだとidという列名が5つできてしまうので、asした方がいいですね。

-- 
ながい <nagai @ infobb.com>





pgsql-jp メーリングリストの案内