Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: MySQL - Выбор позиций с группированием по признаку

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
masterlelik
Отправлено: 21 Июля, 2019 - 18:54:30
Post Id


Новичок


Покинул форум
Сообщений всего: 57
Дата рег-ции: Март 2012  


Помог: 0 раз(а)




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

Есть одна таблица со школами:
Каждая школа может иметь принадлежность к какой-то сети.
Необходимо выбирать по 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 в блоке всегда статически будет одна школа.

(Отредактировано автором: 21 Июля, 2019 - 18:55:29)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB