Для каждой из четырех секций имеем запрос типа:
Select <список полей> From T Where class=1 and `условие_страницы` Order by `Поле_условия_страницы`
Чтобы была возможна пагинация, необходимо чтобы результат запроса был упорядочен;
`условие_страницы` вида `Поле_условия_страницы` > `Значения_Поля_условия_предыдущей_страницы`
Больше Или меньше зависит от общего направления сортировки результата
(надеюсь не слишком путанно)