Operador Within

Within es un operador espacial booleano que evalúa si un objeto, como un polígono, contiene todas las demás geometrías.

Ejemplo 1:

SELECT city FROM table WHERE obj Within <geometry>

Si el proveedor de fuente de datos admite Within, toda la consulta es delegada al proveedor de fuente de datos.

Si el proveedor de fuente de datos no admite Within, la consulta es convertida en EnvelopesIntersect y se delega como se indica a continuación:

SELECT city, obj FROM table WHERE obj EnvelopesIntersect <geometry>

Spectrum Spatial evalúa a Within, usando los resultados del proveedor de fuente de datos:

SELECT city FROM <results of the delegation> WHERE obj Within <geometry>

Ejemplo 2:

SELECT city FROM table WHERE <geometry> Within obj

Este ejemplo es lo contrario del primer ejemplo. Es lo opuesto del operador Contains con los operandos invertidos. Como se indicó, esta consulta no cumple con las reglas de la cláusula WHERE, donde los operadores booleanos deben estar en la forma WHERE <column> operator <geometry>. La consulta se reformula como una operación de Contains y se delega de acuerdo a las reglas de dicho operador.

SELECT city FROM table WHERE obj Contains <geometry>