Tôi đang cố gắng tìm một truy vấn MySQL sẽ tìm các giá trị riêng biệt trong một trường cụ thể, đếm số lần xuất hiện của giá trị đó và sau đó sắp xếp kết quả theo số.MySQL: Đếm số lần xuất hiện của các giá trị riêng biệt
dụ db
id name
----- ------
1 Mark
2 Mike
3 Paul
4 Mike
5 Mike
6 John
7 Mark
dự kiến kết quả
name count
----- -----
Mike 3
Mark 2
Paul 1
John 1
Cảm ơn
Nhóm chính xác bằng cách làm gì ở đây? Không rõ mục đích là gì? Có vẻ như nó nên làm việc với nó nếu bạn chỉ đọc nó rõ ràng. – Prospero
Trong khi truy vấn của Amber là câu trả lời đúng cho câu hỏi, tôi muốn thực hiện một sửa chữa trên bình luận của mình để tránh những người mới lạc lối. Nếu bạn bỏ "nhóm theo" trong truy vấn MySQL, bạn sẽ không nhận được [Mike, 1], [Mike, 1], bạn nhận được một kết quả duy nhất sẽ là tên trên hàng FIRST trả về và đếm số hàng trong bảng, vì vậy trong trường hợp này là [Mark, 7]. count(), dưới dạng hàm tổng hợp hoạt động trên toàn bộ tập dữ liệu, tổng hợp, đếm hoặc phối hợp trường được chỉ định xuống một hàng. Nhóm bằng cách chia nhỏ tập dữ liệu thành các khối dựa trên các combo độc đáo của các trường được chỉ định –
@Avatar_Squadron Khá đúng; Tôi đã xóa nhận xét trước đó - nó đã nằm ngoài đầu của tôi, và tôi không có xu hướng thực sự quan sát kết quả đếm mà không có nhóm nhiều. :) – Amber