人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

SQLで以下のようにテーブルにあるフィールドで同じ値があるレコードが複数ある場合に、そのレコード名と個数の取得の方法はあるでしょうか?
例えば以下の場合、ringo 3, apple 2のように。

id name value
1 a apple
2 b ringo
3 c ringo
4 d ringo
5 e apple

●質問者: koime_ryokutya
●カテゴリ:コンピュータ インターネット
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● Melodybox

select value, count(*) from [テーブル名] group by value;

でどうでしょうか。


2 ● うぃんど

単純にvalueの個数を集計したいという場合であれば、

回答No.1のSQL文になりますが、

「同じ値があるレコードが複数ある場合」なので、

「同じ値が複数存在しない場合はスルーする」という絞込みを追加しました

(複数行に分けてますが回答No.1のように1行に書いてもモチロンOK)

SELECT value, count(*)
FROM テーブル
GROUP BY value
HAVING count(*) > 1
;

大文字小文字の違いがありますが、これは見易さを考慮してのことで、

たいていのデータベースではどちらでも動きます

(それにしてもリニューアル後のスーパーpre記法の背景色は濃すぎて見づらい)

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ