[pgsql-jp: 35131] Re: テーブルの結合について教えてください

切明 裕次 y-kiriaki @ tec.co.jp
2005年 3月 25日 (金) 19:04:42 JST


tomsonさん、小田切さん、中村さん、早速回答をいただきありがとうございます。
皆さんのお知恵を拝借して以下のようにしてみました。

select user.name,
 d1.score as c1,
 d2.score as c2,
 d3.score as c3,
 (d1.score + d2.score + d3.score)/3 as avg 
 from user 
  left join (select * from data where count=1) as d1 using(no)
  left join (select * from data where count=2) as d2 using(no)
  left join (select * from data where count=3) as d3 using(no)

結果は以下のようになりました。
 name | c1 | c2 | c3  | avg
------+----+----+-----+-----
 aaa  | 50 | 60 | 120 |  76
 bbb  | 70 | 80 |     |

bbbの平均が出ないのですが、勉強がてら考えてみたいと思います。
本当にどうもありがとうございました。



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