Допустим, у вас есть следующая таблица:
items(item_id, item_parent)
... и это таблица с самоссылкой - item_parent
относится к item_id
.
Какой SQL-запрос вы бы использовали, чтобы ВЫБРАТЬ все элементы в таблице вместе с их глубиной, где глубина элемента - это сумма всех родителей и дедов этого элемента.
Если содержание таблицы следующее:
item_id item_parent
----------- -----------
1 0
2 0
3 2
4 2
5 3
... запрос должен получить следующий набор объектов:
{ "item_id": 1, "глубина": 0}
{ "Item_id": 2, "глубина": 0} * * 1016
{ "Item_id": 3, "глубина": 1}
{ "Item_id": 4, "глубина": 1}
{"item_id": 5, "глубина": 2}
P.S. Я ищу подход, поддерживаемый MySQL.