Как сделано сейчас:
На странице может быть до 50 блоков
Каждый блок имеет параметры входа и выхода
Это просто делается inner join и все нормально
Но проблема в том, что блоки разделяются на типы (например "таймер", "рандом" и тд)
Блок может быть только одного вида
Тип блока сейчас пишу в основе (block(block_type))
Затем с помощью пхп делаю switch и если block_type = 'random', то я делаю еще один sql запрос в бд на block_random where `block_id` = some_id
У некоторых из этих подблоков так же могут быть подподблоки
В общем
Как мне их правильно соединять (может стоит как то переделать структуру бд(но как?))?
Потому что сейчас если на странице Х блоков, то делается Х+1 запрос в БД за одну страницу (если 50 блоков, то 1 основной и 50 по типам)