SQLで グループ毎にカウントした数でなくて割合を求めたいのです。
select name, count(*) from データベース名 group by name order by 2 desc;
とすると、以下のように200件あるデータで
グループ(名前)毎に個数が表示されますが、
田中 70
上村 120
橘川 10
下のように割合(パーセント)を求めるにはどのようにSQLを書けばよいのでしょうか?
田中 70 35%
上村 120 60%
橘川 10 5%
No.2ベストアンサー
- 回答日時:
MySQL 4.1以降なら、インラインビューを使うと簡単です。
-- MySQL 4.1-
select name,cnt,cast(cnt/ttl*100 as signed) as pct
from
(select name,count(*) as cnt
from t0
group by name) as x,
(select count(*) as ttl
from t0) as y
;
MySQL 4.0までの場合は、1回のSQLでは結果を得られません。
temporary tableまたはユーザ変数を利用して、2回のSQLで得る必要があります。ユーザ変数を利用する例を示します。
-- MySQL -4.0
select count(*) into @ttl from t0;
select name,count(*),cast(count(*)/@ttl*100 as signed) as pct
from t0
group by name
;
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySql ページング 2 2022/09/20 06:38
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- MySQL PhpMyAdminで作成して実行せよ。 東京23区を、皇居を中心とした4つのエリア(南東, 南西, 1 2023/06/11 11:58
- Perl RSSにdiv,ul classを付けたいのですがどのようにつけるのかわからないです 2 2022/03/28 01:53
- PostgreSQL SQLで検索結果の記事を表示したい 1 2022/04/28 21:03
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQL文で右から1文字だけ削除す...
-
sum()の出力結果順に並び替えを...
-
MySQLで MAX()とGROUP BYを使う...
-
【MYSQL】asでリネームしてwher...
-
割合(パーセント)を求めるに...
-
使うべきでない文字。
-
SQLの集計で「全て」の合計も表...
-
名寄せして件数を取得する事は...
-
チェックボックスの項目をDBにi...
-
カウント結果を1レコードの中...
-
【初歩】ラジオボタンをつかっ...
-
GROUP BYを行った後に結合した...
-
Oracleでの文字列連結サイズの上限
-
Accessで別テーブルの値をフォ...
-
SELECTで1件のみ取得するには?
-
select句副問い合わせ 値の個...
-
複数テーブルのMAX値の行データ...
-
OracleのSQL*PLUSで、デー...
-
ファイル書込みで一行もしくは...
-
SELECTの結果で同一行を複数回...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQL文で右から1文字だけ削除す...
-
【MYSQL】asでリネームしてwher...
-
使うべきでない文字。
-
sum()の出力結果順に並び替えを...
-
SQLの集計で「全て」の合計も表...
-
割合(パーセント)を求めるに...
-
MySQLで MAX()とGROUP BYを使う...
-
カウント結果を1レコードの中...
-
チェックボックスの項目をDBにi...
-
【初歩】ラジオボタンをつかっ...
-
月別、販売員別の集計がわかり...
-
何にかが違うから エラーなんで...
-
表示幅を短くしたい
-
phpmyadminはトリガーやIF文を...
-
MySQL のデータからドロップダ...
-
MySQL関数max()を条件にSELECT...
-
MySQLにて特定レコードのみを抽...
-
重複が
-
名寄せして件数を取得する事は...
-
MySQLで2つのテーブルのデータ...
おすすめ情報