1

次のMySQLテーブルについて考えてみます。

user_id
-------
1
1
2
3
3
3
3

次の出力が欲しいです:

user_id  cnt
-------------
1        2
2        1
3        4

私はこれがそれを実現するだろうが、そうではない:

SELECT user_id, COUNT(1) FROM table GROUP BY user_id

私は何が間違っているのですか?

4

3 に答える 3

3
SELECT user_id, COUNT(*) FROM table GROUP BY user_id;

ところで、好奇心もあります:

SELECT user_id, SUM(1) FROM table GROUP BY user_id

どちらも必要な出力を提供します。

于 2012-07-19T19:06:57.743 に答える
1

これを試して:

SELECT user_id、COUNT(user_id)as cnt FROM table GROUP BY user_id

于 2012-07-19T19:08:37.163 に答える
1
SELECT user_id, count(user_id) as total FROM temp group by user_id; 

クエリはこれを生成しました。

user_id  total
-------------
1        2
2        1
3        4
于 2012-07-19T19:10:41.223 に答える