[pgsql-jp: 34877] Re: 集計SQLについて
nomoto
shin-1 @ ca2.so-net.ne.jp
2005年 2月 12日 (土) 17:17:26 JST
サブクエリーで以下のような2表をつくって支店でjoinすれば?
支店名 男
--------------------
A支店 1
B支店 1
--------------------
支店名 女
--------------------
A支店 2
B支店 1
C支店 3
--------------------
select a.支店名, a.男, b.女 from
(select 支店名, count(*) as 男 from
元テーブル group by 性別 where 性別='男') as a
join
(select 支店名, count(*) as 女 from
元テーブル group by 性別 where 性別='女') as b
using (支店名)
C支店の男が0ではなくNULLになっちゃうけど
NULLだったら0にする関数でPostgreにはあったように思う。
>支店名 男 女
>--------------------
>A支店 1 2
>B支店 1 1
>C支店 0 3
>--------------------
>
>単純に group by を使用しただけでは、このような形で得られないようです。
>
>何か良い案はありますでしょうか?
pgsql-jp メーリングリストの案内