Mysql MySQL - Выбор позиций с группированием по признаку

mastrelelik

Новичок
Просьба помочь написать запрос или несколько запросов.

Есть одна таблица со школами:
Каждая школа может иметь принадлежность к какой-то сети.
Необходимо выбирать по 10 штук на странице таким образом, чтоб если найдена хотя бы одна школа какой-то сети, то были бы выбраны все школы этой сети (network_id=1), но они не считались бы в те 10, которые указаны в limit 10.
Только первая школа одной сети входит в десять, остальные идут как бонус. А network_id=0 считаются как уникальные школы и они не должны ни с кем группироваться.
В итоге результатом запроса может быть 15 записей, 8 из которых имеют network_id=0, 4 с network_id=1, 3 с network_id=2
Расшифровка limit 10 в данном варианте это 8 с network_id=0 , одна с network_id=1 и одна network_id=2, остальные как бонус.
Сортировка по заголовку.
И второй момент, если будет вторая страница (limit 10, 10), то если на первой странице уже выбирались школы с network_id>0 (например с network_id=1), то их не должно выбрать т.к. они все были отображены на первой странице.

P.S. в самом начале я писал "Необходимо выбирать по 10 штук на странице", а чуть ниже расписал в примере 15 штук. Это не ошибка, на странице будет 10 блоков, только в блоках с network_id>0 будут кнопки для отображения ВСЕХ школ из одной сети в этом блоке, в блоке будет меняться картинка и название. А для школ с network_id=0 в блоке всегда статически будет одна школа.
 
Сверху