これはおそらく以前に尋ねられたでしょうが、無数の検索結果をたどることはできません。
正規化されていないMySQLテーブルがある場合、列xの各個別値が使用された回数をカウントするために最も最適化されたクエリは何ですか?
例えばを含むテーブルを考える
_mike
mary
mike
_
次のような結果を返します。
_mike 2
mary 1
_
MySQLのドキュメントから、count
は_GROUP BY
_で使用できる集約関数であるように見えますが、これは私が望むことをしていません(_GROUP BY
_、各行の出現数ではありません。つまり、これは機能しませんSELECT count(email) as c FROM orders GROUP BY email
select email, count(*) as c FROM orders GROUP BY email
SELECT column_name, COUNT(column_name)
FROM table_name
GROUP BY column_name
Group by functionを見てください。
Group by関数が行うことは、特定のフィールドの類似した値をかなりグループ化することです。次に、COUNT関数を使用してこの値がグループ化された回数を表示できます。
MySQLで定義された他の多数の関数とともにgroup by関数を使用することもできます(上記のリンクを参照)。
mysql> SELECT student_name, AVG(test_score)
-> FROM student
-> GROUP BY student_name;
select name, count(*) from table group by name;
私はそれをすべきだと思います