-1

私は次の表を持っています

mysql> select * from abc;
+---+------+------+
| A | B    | C    |
+---+------+------+
| 2 | 2    | 2    |
| 1 | 2    | 3    |
| 3 | 3    | 2    |
| 4 | 3    | 3    |
+---+------+------+
4 rows in set (0.00 sec)



mysql> select count(distinct *)
    -> from abc
    -> group by a;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near '*)
from abc
group by a' at line 1

上記のクエリの正しい構文を誰かに知らせてもらえますか?

4

1 に答える 1

1

を使用するためDISTINCTの列を提供する必要がありますDISTINCT

したがって、たとえばあなたの場合:SELECT DISTINCT(a) FROM abc

一意の値に基づいて、テーブルの行をカウントしますか?

SELECT COUNT (DISTINCT a) FROM abc

すでにそれを処理GROUP BYしているので、必要はありません。DISTINCT

于 2012-09-16T22:56:26.593 に答える