Jeśli masz dwie kategorie (jak w twoim pytaniu), najprostszym sposobem w MySQL jest użycie union all
:
(select * from t_shop where category = 1 order by rand() limit 5)
union all
(select * from t_shop where category = 2 order by rand() limit 5)
Jeśli masz dwie kategorie (jak w twoim pytaniu), najprostszym sposobem w MySQL jest użycie union all
:
(select * from t_shop where category = 1 order by rand() limit 5)
union all
(select * from t_shop where category = 2 order by rand() limit 5)