MySQL: Zählen Sie eindeutige Wertepaare in Zeilen
Ich habe ein Problem, das ich nicht lösen kann. So sieht meine Tabelle 'myTable' aus:
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| one | varchar(10) | YES | | NULL | |
| two | varchar(10) | YES | | NULL | |
+----------+-------------+------+-----+---------+----------------+
mysql> SELECT * FROM myTable;
+----+-----------------+------------+
| id | one | two |
+----+-----------------+------------+
| 1 | cat | steve |
| 2 | cat | steve |
| 3 | cat | adam |
| 4 | dog | john |
| 5 | dog | adam |
| 6 | dog | alice |
| 7 | mouse | peter |
| 8 | mouse | peter |
| 9 | mouse | peter |
+----+-----------------+------------+
Was ich danach habe, ist eine Abfrage, die mir für jeden eindeutigen Wert in 'Eins' die Anzahl der eindeutigen Werte in 'Zwei' gibt, dh das ergibt: Hund 3 (drei eindeutige Namen) Katze 2 (zwei eindeutige Namen) Maus 1 (ein eindeutiger Name)
Ich habe mich umgesehen, weiß aber nicht, wie ich die richtige Antwort finden soll, und bin so weit gekommen wie:
SELECT one, two, COUNT(two) AS nr FROM myTable GROUP BY one, two ORDER BY one;
Anregungen sehr geschätzt! Danke im Voraus.