Но выбор возвращает только первую запись в группе, а не все записи в группе. Почему?
Потому что одна строка на группу - это то, что GROUP BY
делает .
Способ сделать то, что вы хотите сделать, это выяснить, какие страны иметь более 5 клиентов, а затем вернуть все записи из этих стран:
SELECT * FROM Customers WHERE Country IN
(SELECT Country FROM Customers GROUP BY Country HAVING COUNT(CustomerID) > 5)