[pgsql-jp: 37727] Re: group by のレコード数を取得する SQL

Shu Sawada luna @ lunanet.gr.jp
2006年 11月 29日 (水) 03:19:52 JST


さわだと申します。

> select item, count(*) from data group by item;
> 
> アプリケーションで簡単に取得できますが、DBで取得する方法もあるのでしょう
> か。愚問で申し訳ありません。お時間がございましたらお知恵をお貸し下さい。

単純にサブクエリじゃだめですか?

luna=> select owner, count(*) from tablename group by owner;
  owner   | count
----------+-------
          | 19876
 aaaaaaa  |   287
 bbbbbbbb |    40
 ccccc    |   166
 dddddd   |   251
 eeee     |   847
(6 rows)

luna=> select count(*) from (select owner, count(*) from tablename group by owner) as t;
 count
-------
     6
(1 row)

luna=> select version();
                                                version
--------------------------------------------------------------------------------------------------------
 PostgreSQL 7.4.13 on i686-redhat-linux-gnu, compiled by GCC gcc (GCC) 3.4.5 20051201 (Red Hat 3.4.5-2)
(1 row)

勘違いしていたらごめんなさい。

-- 
Shu Sawada
http://luna.lunanet.gr.jp/
http://www.cycleof5th.com/



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