sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Cuál es la utilidad del tipo de matriz?

Los he usado para facilitar el trabajo con árboles (como hilos de comentarios). Puede almacenar la ruta desde la raíz del árbol hasta un solo nodo en una matriz, cada número en la matriz es el número de rama para ese nodo. Entonces, puedes hacer cosas como esta:

SELECT id, content
FROM nodes
WHERE tree = X
ORDER BY path -- The array is here.

PostgreSQL comparará las matrices elemento por elemento de forma natural, por lo que ORDER BY path volcará el árbol en un orden de visualización lineal sensato; luego, verifica la longitud de path para averiguar la profundidad de un nodo y eso le da la sangría para obtener la representación correcta.

El enfoque anterior lo lleva de la base de datos a la página renderizada con un solo paso a través de los datos.

PostgreSQL también tiene tipos geométricos , simples tipos de clave/valor y admite la construcción de varios otros tipos compuestos .

Por lo general, es mejor usar las tablas de asociación tradicionales, pero no tiene nada de malo tener más herramientas en su caja de herramientas.