Est-il normal d'utiliser le type de géométrie «multipoint» au lieu de «point» sachant que je l'utilise pour stocker un seul point?
Comment puis-je convertir de multipoint en point?
Est-il normal d'utiliser le type de géométrie «multipoint» au lieu de «point» sachant que je l'utilise pour stocker un seul point?
Comment puis-je convertir de multipoint en point?
Réponses:
Pour convertir "Multipoint" en "Point", vous devez utiliser ST_Dump , par exemple:
SELECT (ST_Dump(the_geom)).geom AS the_POINT_geom
FROM MULTIPOINT_table;
Sur la question de l'utilisation des géométries "Multi" ou simples, j'utilise cette logique:
La façon la plus simple d'extraire un point d'un point unique MULTIPOINTest ST_GeometryN:
SELECT ST_AsText(ST_GeometryN('MULTIPOINT ((1 1))', 1));
--POINT(1 1)
Cela évite les problèmes potentiels dans les situations où une fonction de retour d'ensemble ne peut pas être utilisée.
Certaines optimisations importantes ne sont disponibles que pour POINTles géométries de type (en particulier dans les versions antérieures de PostGIS), afin de stocker des points uniques, conformément aux POINTbonnes pratiques. A POINTutilise également environ 25% d'espace en moins que a MULTIPOINT.