SQL集計関数で最終行or最初の行にフィールド毎に小計を出力することは可能ですか?


出力したいテーブルは SELECT name,count(*) FROM test GROUP BY name;
name   | count
-------+-------
空海   | 4
鑑真   | 5
ガンジー  | 1

これを、下記のように

name   | count
-------+-------
3    | 10   ←この行を追加したい
空海   | 4
鑑真   | 5
ガンジー  | 1

といった具合です。(表が崩れまくりですみません)
CGI側でSQLを2回発行すれば済む話ですが、SQL文が1回で済む方法はないでしょうか

回答の条件
  • URL必須
  • 1人50回まで
  • 登録:
  • 終了:2006/03/27 21:05:52
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:WANT No.1

回答回数118ベストアンサー獲得回数9

ポイント27pt

 UNION句でつなげるのはダメでしょうか?

SELECT name,count

FROM test

UNION

SELECT name,count(*) FROM test GROUP BY name

 実際に走らせたわけではありませんので、

間違っているかもしれません...

もし間違っていたらすみません。

(参考)

http://www.atmarkit.co.jp/fnetwork/rensai/sql09/sql1.html

id:kamiochiai

ありがとうございます!

2006/03/27 21:05:14
id:extralights No.2

回答回数3ベストアンサー獲得回数0

ポイント27pt

http://www.atmarkit.co.jp/fnetwork/rensai/sql09/sql1.html


UNIONはだめですか?

ORACLE,SQL Serverは使えるようです。

そのほかは確認してません。

SELECT ~

UNION

SELECT ~

;

id:kamiochiai

ありがとうございます!

2006/03/27 21:05:17
id:yakato_jun No.3

回答回数3ベストアンサー獲得回数0

ポイント27pt

http://127.0.0.1

↑ダミーです。

UNION ALLでまとめる事が出来ますよ。

SELECT

TO_CHAR(count(*)) AS name

, SUM(count) AS count

FROM

test

GROUP BY

name

UNION ALL

SELECT

name AS name

, count AS count

FROM

test

id:kamiochiai

ありがとうございます!

2006/03/27 21:05:21

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません