2

単一選択クエリを使用して、グループ内の繰り返し値の数を検索したい。あるグループでの出現回数を調べたいgro​​upbyの列を使用できません。

例えば

obsid    Name      Value                 
1        Ronak     120
2        Ronak     125   
3        Ronak     120                      
4        Pankti    130                      
5        Pankti    130
6        Sanket    140     
7        Aakash    140
8        Unnat     120

今、私は以下の結果を与えるmysqlでselectクエリを開発したいと思います

obsid    Name      Value     Value_occurrence             
1        Ronak     120       2
2        Ronak     125       1              
4        Pankti    130       2              
6        Sanket    140       1
7        Aakash    140       1
8        Unnat     120       1
4

2 に答える 2

5
SELECT min(obsid) AS obsid, Name, Value, COUNT(*) AS Value_occurence
FROM yourTable
GROUP BY Name, Value
于 2012-10-05T19:01:22.897 に答える
1

目的の列でグループ化しCOUNT、各グループの行をカウントするために使用します。

SELECT MIN(`obsid`) AS `obsid`, `Name`, `Value`, COUNT(*) AS Value_occurrence             
FROM yourtable
GROUP BY `Name`, `Value`

サンプル データと上記のクエリの結果を示すこのオンライン デモを試してください。

于 2012-10-05T19:00:59.583 に答える