У меня есть таблица сущностей с целочисленными идентификаторами, назовем ее Entities. В другой таблице у меня есть односторонние отношения между этими объектами, для которых есть столбец «От», «Кому» и какие у них отношения (давайте назовем эту таблицу Отношения). Сущности могут быть «двухсторонними», если у них есть два соответствующих односторонних отношения, и в целом это граф или сеть.
Я хочу написать процедуру, в которой я могу передать ему идентификатор сущности и узнать, сколько степеней разделения нужно пройти, и он возвращает каждый идентификатор сущности в пределах такого количества отношений переданного идентификатора. Я понятия не имею, как написать эту рутину. Итеративная природа этого выходит за рамки моего опыта с хранимыми процедурами. Любые подсказки, как начать это?