Tôi có một bảng SQL được gọi là "bài viết" trông như thế này:
id | category
-----------------------
1 | 3
2 | 1
3 | 4
4 | 2
5 | 1
6 | 1
7 | 2
Mỗi số danh mục tương ứng với một thể loại. Làm thế nào tôi có thể đếm số lần mỗi loại xuất hiện trên một bài đăng trong một truy vấn sql ?
Ví dụ: một truy vấn như vậy có thể trả về một mảng tượng trưng như thế này: (1:3, 2:2, 3:1, 4:1)
Phương pháp hiện tại của tôi là sử dụng các truy vấn cho từng danh mục có thể, chẳng hạn như : SELECT COUNT(*) AS num FROM posts WHERE category=#
, và sau đó kết hợp các giá trị trả về thành một mảng cuối cùng. Tuy nhiên, tôi đang tìm một giải pháp chỉ sử dụng một truy vấn.
3
Bản sao có thể có của MySQL: Đếm số lần xuất hiện của các giá trị riêng biệt
—
Oleg V. Volkov