Използвал съм ги, за да улесня работата с дървета (като нишки за коментари). Можете да съхраните пътя от корена на дървото до единичен възел в масив, всяко число в масива е номерът на клона за този възел. След това можете да правите неща като това:
SELECT id, content
FROM nodes
WHERE tree = X
ORDER BY path -- The array is here.
PostgreSQL ще сравнява масивите елемент по елемент по естествен начин, така че ORDER BY path
ще изхвърли дървото в разумен линеен ред на показване; след това проверявате дължината на path
за да разберете дълбочината на възел и това ви дава вдлъбнатината, за да получите правилното изобразяване.
Горният подход ви отвежда от базата данни до изобразената страница с едно преминаване през данните.
PostgreSQL също има геометрични типове , прости типове ключ/стойност и поддържа изграждането на различни други съставни типове .
Обикновено е по-добре да използвате традиционни асоциативни таблици, но няма нищо лошо да имате повече инструменти в кутията си с инструменти.