Php faq from tree

Вкладені безлічі (Nested Sets)

Такий спосіб представлення дерев, в якому для кожної вершини дерева вказується певний діапазон чисел. Вершина А є дочірньою по відношенню до вершини Б в разі, якщо діапазон чисел вершини А лежить всередині діапазону чисел вершини Б.

При такому способі подання дерев значно спрощується формулювання деяких запитів. Наприклад, вибрати всі поддерево можна, вибравши всі вершини, у яких діапазони лежать всередині діапазону батьківської вершини, а вибрати всі вершини, які є батьківськими по відношенню до даної можна, вибравши всі вершини, діапазон яких покриває діапазон даної вершини.

Поширені запитання

Як завантажити дерево, яке зберігається у вигляді вкладених множин

Функції для завантаження дерева завантажують його в масив, описаний в розділі
Внутрішнє представлення дерев в програмах.

Після того, як Ви завантажили дерево, його можна відобразити. Скрипти для виведення дерев Ви можете знайти в розділі
Скрипти для виведення дерев.

Дивіться також

Російською мовою і змішане:


  • su1d phpDbTree, оригінал статті Joe Celko і її російський переклад:
  • Зберігання деревовидних структур в Базах даних (про Nested Sets і phpDbTree)
  • Реалізація дерева з використанням ADODB

    Англійською мовою:


    • Trees in SQL (by Joe Celko)
  • Managing Hierarchical Data in MySQL
  • Nested Sets and PostgreSQL
  • Trees in SQL: Nested Sets and Materialized Path (by Vadim Tropashko)