Điều này sẽ hoạt động trên khá nhiều phương ngữ SQL:
SELECT last_name, first_name FROM names
WHERE last_name IN (
SELECT last_name FROM names GROUP BY last_name HAVING COUNT(*) > 1
)
Tuy nhiên, nó sẽ cung cấp cho bạn một tập hợp kết quả như thế này:
Smith Jack
Smith Joe
Smith Anna
Sixpack Joe
Sixpack Eve
Giải pháp thanh lịch nhất để hiển thị điều này ở định dạng mong muốn IMO là chỉ cần sắp xếp lại tập kết quả theo chương trình trong ứng dụng khách thay vì kéo tất cả các loại nguy hiểm SQL khó hiểu; một cái gì đó như (mã giả):
for each row in resultset
if row[last_name] <> previous_last_name
print newline, print last_name
print ' '
print first_name