Wypróbuj to zapytanie -
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
Wyświetli pierwszych 5 pozycji w każdej kategorii. Usuń komentarz LIMIT 20
Jeśli potrzebujesz. Dołącz do Categories
stół, jeśli potrzebujesz.