0

値が列に表示される回数を取得しようとしていますが、それは'dでグループ化された後でのみです。以下に説明します-

このクエリは私にこれらの結果を取得します-

select id_seed, id_campaign, id_chat from messages where id_campaign = 140 group by id_chat;
+------------+-------------+----------------------------------------+
| id_seed    | id_campaign | id_chat                                |
+------------+-------------+----------------------------------------+
| 4102593936 |         140 | 0d60b2a4a79938b07ac39b977a96efc4CCC140 |
| 4102593936 |         140 | 1118cb4436f5e5d03f4805d0b9e8bf3eCCC140 |
| 4075174669 |         140 | 12d59be001fc6d795c2da5f9456b41afCCC140 |
| 4102593936 |         140 | 2032e80ca46bca4a5d97f2da92e9f7b1CCC140 |
| 4102593936 |         140 | a6ab87684aa1a90dff7ea61cf618d3f9CCC140 |
| 4075174669 |         140 | ace48ab48c4409e6307a2dc55856ce72CCC140 |
| 4075174669 |         140 | d09d4cf87e5d8b2c3efcfea1fd94f9eaCCC140 |
| 4102593936 |         140 | d2f5fc4c1d7d9d95cfd4846234f6aad3CCC140 |
| 4102593936 |         140 | d5b6712b51878a2f37e7004bc5b57171CCC140 |
+------------+-------------+----------------------------------------+

私はここで探しているものをほぼ持っていますが、何らかの理由でそれが足し合わされていません。

select distinct count(id_seed) as c, id_seed from messages where id_campaign = 140 group by id_chat, id_seed;
+---+------------+
| c | id_seed    |
+---+------------+
| 1 | 4075174669 |
| 5 | 4102593936 |
| 1 | 4102593936 |
| 2 | 4075174669 |

group byが実行された後、各値が列id_seed内で何回発生するかを取得したいと思います。私は近くにいてかなり遠くに行きましたが、それでも立ち往生しています。手がかりはありますか?

4

1 に答える 1

0
SELECT
    COUNT(*),
    id_seed
FROM
    (
        select 
            id_seed
        from 
            messages 
        where 
            id_campaign = 140 
        group by 
            id_chat
    )
GROUP BY
    id_seed
于 2012-08-24T16:59:20.917 に答える