Załóżmy, że masz tabelę z poniższej treści:
-------------------
| ID | NAME | GROUP |
+-------------------+
| 1 | A | 1 |
+-------------------+
| 2 | B | 2 |
+-------------------+
| 3 | C | 2 |
+-------------------+
| 4 | D | 3 |
+-------------------+
| 5 | E | 1 |
+-------------------+
| 6 | F | 3 |
+-------------------+
Poniższy własnym LEFT JOIN zlicza liczbę różne wartości w grupie.
SELECT COUNT(*)
FROM table AS t1
LEFT JOIN table AS t2 ON t2.GROUP = t1.GROUP AND t2.ID > t1.ID
WHERE t2.id IS NULL;
Co to jest to zapytanie, to się dowiedzieć, dla każdej grupy, element o najwyższym identyfikatorze.
Chcesz wiedzieć, ile wierszy są w każdej grupie? Lub ile wierszy znajduje się we wszystkich grupach? Lub ile grup? – keithjgrant
wszystkie wiersze, które ten wybór zwraca – trrrrrrm