Итак дано:
Усть сайт произвольного наполнения.
Верхний уровень сайта лезет в базу и находит там некоторое (произвольное) кол-во потомков. (обычное дерево каталога)
То есть есть некоторое (опять же произвольное и заранее не известное) количество разных типов данных (разных сущностей) которые могут привязываться к объектам каталога.
Все сущности имеют произвольное количество полей разных типов. (например типа 1: id(int), name(varchar), cost(decimal), description(text), short_name(varchar), date(datetime))
Соответственно каждый типа данных (сущность) - это отдельная таблица в БД.
На рисунке:
Квадраты - объекты каталога
Эллипсы - произвольные объекты (разные типы объектов == разный цвет контура)
Так вот задача такова: Как за наименьшее кол-во запросов в БД вывести все субъекты всех типов, прикреплённые к заданному объекту каталога?
Первый запрос который получает список субъектов с их Id и названиями таблиц в которых они лежат, в расчёт не брать.