Wykorzystałem je, aby ułatwić pracę z drzewami (takimi jak wątki komentarzy). Możesz przechowywać ścieżkę od korzenia drzewa do pojedynczego węzła w tablicy, każda liczba w tablicy jest numerem gałęzi dla tego węzła. Następnie możesz zrobić takie rzeczy:
SELECT id, content
FROM nodes
WHERE tree = X
ORDER BY path -- The array is here.
PostgreSQL porównuje tablice element po elemencie w naturalny sposób, więc ORDER BY path
zrzuci drzewo w rozsądnej liniowej kolejności wyświetlania; następnie sprawdzasz długość path
aby określić głębokość węzła, a to daje wcięcie, aby uzyskać prawidłowe renderowanie.
Powyższe podejście prowadzi z bazy danych do renderowanej strony z jednym przejściem przez dane.
PostgreSQL ma również typy geometryczne , proste typy klucza/wartości i obsługuje tworzenie różnych innych typów złożonych .
Zwykle lepiej jest używać tradycyjnych tabel asocjacyjnych, ale nie ma nic złego w posiadaniu większej liczby narzędzi w swoim zestawie narzędzi.