MySQLで次のことを実行しようとしています。
SELECT DISTINCT field
FROM table
WHERE COUNT(field) > 10
1111-グループ関数の無効な使用(私が理解していることからCOUNT
、where句などのグループ関数を使用することはできませんか?)
少なくともN行に存在するすべてのフィールドを選択(区別)する適切な方法は何ですか?これは、たとえばPHPで外部的に行う必要があることですか?
ありがとう!
MySQLで次のことを実行しようとしています。
SELECT DISTINCT field
FROM table
WHERE COUNT(field) > 10
1111-グループ関数の無効な使用(私が理解していることからCOUNT
、where句などのグループ関数を使用することはできませんか?)
少なくともN行に存在するすべてのフィールドを選択(区別)する適切な方法は何ですか?これは、たとえばPHPで外部的に行う必要があることですか?
ありがとう!
使用する:
SELECT DISTINCT field
FROM table
HAVING COUNT(field) > 10
WHERE
句内のサブクエリの外部で集計関数を使用することはできません。HAVING
そのため、この句を使用する必要があります。また、 null以外の値をカウントすることにも注意してCOUNT
ください...
GROUP BY
理想的には、句もあるべきです。しかし、MySQLはそれについてかなり緩いです。
...これらすべての列GROUP BY
をリストする句を追加する必要があります。この場合、省略形はありません。次に、句をに変更します。HAVING
COUNT(*) > 10