Làm cách nào để nhận danh mục thường xuyên xảy ra nhất cho mỗi thẻ trong MySQL? Lý tưởng nhất, tôi sẽ muốn mô phỏng một hàm tổng hợp có thể tính toán mode của một cột.MySQL SELECT thường xuyên nhất theo nhóm
SELECT
t.tag
, s.category
FROM tags t
LEFT JOIN stuff s
USING (id)
ORDER BY tag;
+------------------+----------+
| tag | category |
+------------------+----------+
| automotive | 8 |
| ba | 8 |
| bamboo | 8 |
| bamboo | 8 |
| bamboo | 8 |
| bamboo | 8 |
| bamboo | 8 |
| bamboo | 10 |
| bamboo | 8 |
| bamboo | 9 |
| bamboo | 8 |
| bamboo | 10 |
| bamboo | 8 |
| bamboo | 9 |
| bamboo | 8 |
| banana tree | 8 |
| banana tree | 8 |
| banana tree | 8 |
| banana tree | 8 |
| bath | 9 |
+-----------------------------+
Chỉ cần nghĩ rằng tôi muốn đề cập đến một vài năm sau đó và thông minh hơn - không tổ chức thẻ như thế này, nó là một antipattern. Sử dụng bảng many2many để xác định mối quan hệ giữa các thẻ và các mục. Điều đó nói rằng, tôi vẫn muốn có một chức năng tổng hợp MODE trong MySQL. –