У меня есть таблица sqlite, подобная этой
a) таблица узлов
+------------------+------------------+
| id | name |
|-------------------------------------+
|7c7d1ea6-8a9b-4abe| paradise island |
+------------------+------------------+
|7c2fdb84-6d12-4cdb| banana tree |
+------------------+------------------+
|44c034c5-cad0-4f69| yellow banana |
+------------------+------------------+
b) таблица ребер
+----+--------------------+--------------------+
| id | org_id | parent |
|----------------------------------------------+
| 1 | 7c7d1ea6-8a9b-4abe | null |
+------------------+---------------------------+
| 2 | 7c2fdb84-6d12-4cdb | 7c7d1ea6-8a9b-4abe |
+------------------+---------------------------+
| 3 | 44c034c5-cad0-4f69 | 7c2fdb84-6d12-4cdb |
+------------------+---------------------------+
с заданным именем (уникальным, основанным нана имя) Мне нужен запрос, чтобы выбрать его братьев (тот же parent_id), его прямого родителя (ей) и его прямого потомка (ей).
@ jerrad предоставил решение здесь , нотогда он не извлекает братьев, родителей и детей одновременно.это возможно?
Я видел несколько примеров по рекурсивным CTE, но я не знаю, как это сделать.Я использую sequelize ORM и базу данных sqlite.
С другой стороны, глядя на @ решение Джеррада , я могу поместить результаты в один массив, имея в виду, что он должен быть отсортированв порядке названия плюс поддержка нумерации страниц.
Буду признателен всем, кто может мне помочь с этим.
Спасибо