ProportionAvg

Descripción

Calcula el promedio de una agregación de valores, que se ajustan según la proporción de dos objetos geométricos.

Sintaxis

ProportionAvg ( n, value_geometry, reference_geometry )

Argumentos

n es una expresión numérica,

value_geometry es una expresión geométrica, y

reference_geometry es una expresión geométrica.

Ejemplo

Permite obtener el promedio proporcional entre dos valores geométricos (uno un sobre mediante el uso de MI_Box, el otro pasando en un objeto geométrico).

select ProportionAvg(1, obj, MI_Box(-104.493426, 39.399710, -101.282362, 41.474182, 'epsg:4269')) as ProportionAvg from states

Comentarios

ProportionAvg es una función de agregación que solamente se puede usar en una instrucción de agregación Seleccionar. Los valores nulos de n, value_geometry, o reference_geometry son ignorados. Si la agregación solo proporciona valores nulos, entonces se arroja un valor nulo.

En las instancias donde no hay superposición de geometrías, la fila aún se cuenta para calcular el promedio.

Los valores de n veces una proporción se acumulan y promedian. La proporción se determina como el área de la superposición de value_geometry y reference_geometry dividida por el área de value_geometry.

La función de agregación ProportionAvg se puede reemplazar por la siguiente fórmula:

Avg (n * AreaOverlap(value_geometry, reference_geometry)) / Area(value_geometry)) 

AreaOverlap(value_geometry, reference_geometry)) también se denominaArea(Intersection(value_geometry, reference_geometry)).

Si el sistema de coordenadas de value_geometry es fuera de la Tierra, se realizará un cálculo del área cartesiana.