次の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
私は何が間違っているのですか?
次の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
私は何が間違っているのですか?
SELECT user_id, COUNT(*) FROM table GROUP BY user_id;
ところで、好奇心もあります:
SELECT user_id, SUM(1) FROM table GROUP BY user_id
どちらも必要な出力を提供します。
これを試して:
SELECT user_id、COUNT(user_id)as cnt FROM table GROUP BY user_id
SELECT user_id, count(user_id) as total FROM temp group by user_id;
クエリはこれを生成しました。
user_id total
-------------
1 2
2 1
3 4