Tengo una base de datos habilitada espacialmente (DB2, en este caso). Necesito almacenar una gran cantidad de cuadrados en una tabla. ¿Qué tipo de datos de SQL espacial estándar es el más adecuado?SQL espacial: ¿tipo de datos más adecuado para un cuadrado?
Creo que podría utilizar un ST_Polygon, pero tal vez hay un tipo más especializado que daría
- mejor rendimiento
- mejores garantías de datos (quiero cogerlo como un error si alguien dónde almacenar un valor que no es cuadrado de la columna en particular)
he tratado de encontrar una ST_rectangle o ST_squar e tipo, pero no parecen existir (?)
Mientras trabajo con DB2, también me interesan las soluciones que no funcionan en DB2, siempre que sean compatibles con los estándares .
Pero ST_envolope es una función, no un tipo, por lo que yo puedo ver? –
Disculpa, he eliminado una gran cantidad de tonterías enrevesadas ahora. Los puntos se almacenan como una secuencia de float4 en Postgis, no está seguro acerca de DB2 pero debe ser más o menos el mismo, o tal vez uno de los tipos de db2/Oracle 'number'. Supongo que todos los rectángulos son simplemente coordenadas almacenadas como un tipo de flotación básica, con la funcionalidad geográfica habilitada a través de la indexación inteligente para consultas espaciales comunes. – unmounted
Troels es correcto. ST_ENVELOPE es una función que devuelve un ST_POLYGON; ST_ENVELOPE no es un tipo. La optimización de "flotación" es específica de PostGIS. –