У меня есть таблица, которая содержит чисто отношения между группами для приложения, которое может иметь бесконечное количество подгрупп.
CREATE TABLE `shop_groups_group_rel` (
`id_group` int(11) NOT NULL,
`id_parent` int(11) NOT NULL,
`type` enum('shop','group') NOT NULL
);
Тип "магазин" в основном означает самый верхний из них.
Теперь мне нужно иметь возможность получить самую верхнюю группу для ЛЮБОЙ группы, в которой я, возможно, разбираю. Я посмотрелв синтаксис LOOP MySQL, но я не могу понять, как смешать это с реальными запросами в базе данных.
Может кто-нибудь дать мне подсказку о том, как я могу рекурсивно выбрать родительскую группу, пока я не будув самой верхней группе?
Я знаю, что делать это может быть рискованно, потому что может быть бесконечное количество подгрупп, но на практике это никогда не будет больше, чем 2 или 3 подгруппы, и я легко могу установить жесткий пределна это.
Спасибо