Hãy thử truy vấn này -
SELECT item_id, item_name, catid FROM
(SELECT t1.*, COUNT(*) cnt FROM items t1
LEFT JOIN items t2
ON t2.catid = t1.catid AND t2.item_id <= t1.item_id
GROUP BY
t1.catid, t1.item_id
) t
WHERE
cnt < 6
-- LIMIT 20
Nó sẽ hiển thị 5 mục đầu tiên cho mỗi danh mục. Bỏ ghi chú LIMIT 20
nếu bạn cần. Tham gia Categories
bảng nếu bạn cần.