Distancia Manejando - Categoría

Propuesto

Advertencia

Funciones propuestas para la próxima versión mayor.

  • No están oficialmente en la versión actual.

  • Es probable que oficialmente formen parte del próximo lanzamiento:

    • Las funciones hacen uso de ENTEROS y FLOTANTES

    • Probablemente el nombre no cambie. (Pero todavía puede)

    • Es posible que la firma no cambie. (Pero todavía puede)

    • Probablemente la funcionalidad no cambie. (Pero todavía puede)

    • Se han hecho pruebas con pgTap. Pero tal vez se necesiten más.

    • Es posible que la documentación necesite un refinamiento.

Calcular nodos que están dentro de una distancia.

  • Extrae todos los nodos que tienen costos menor o igual al valor de la distancia.

  • Las aristas extraídas conformarán el correspondiente árbol de expansión.

  • Arista \((u, v)\) no se incluye cuando:

    • La distancia de la raiz a:math:u > límite de la distancia.

    • La distancia de la raiz a \(v\) > límite de la distancia.

    • No se crean nuevos nodos en el grafo, por lo que cuando el vértice está dentro de los límites y parte de la arista no está dentro de los límites, la arsta no se incluye.

Parámetros

Parámetro

Tipo

Descripción

SQL de aristas

TEXT

SQL de aristas como se describen abajo.

Raíz

BIGINT

Identificador del vértice raíz del árbol.

Raíces

ARREGLO[ENTEROS]

Arreglo de identificadores de los vértices raíz.

  • Valores \(0\) son ignorados

  • Con el propósito de optimización, valores duplicados son ignorados.

distancia

FLOAT

Límite superior para la inclusión del nodo en el resultado.

Donde:

ENTEROS:

SMALLINT, INTEGER, BIGINT

FLOTANTES:

SMALLINT, INTEGER, BIGINT, REAL, FLOAT

Consultas Internas

SQL aristas

Columna

Tipo

x Defecto

Descripción

id

ENTEROS

Identificador de la arista.

source

ENTEROS

Identificador del primer vértice de la arista.

target

ENTEROS

Identificador del segundo vértice de la arista.

cost

FLOTANTES

Peso de la arista (source, target)

reverse_cost

FLOTANTES

-1

Peso de la arista (target, source)

  • Cuando negativo: la arista (target, source) no existe, por lo tanto no es parte del grafo.

Donde:

ENTEROS:

SMALLINT, INTEGER, BIGINT

FLOTANTES:

SMALLINT, INTEGER, BIGINT, REAL, FLOAT

Ver también

Índices y tablas