Question

Voici une partie de ma table

the_new_geom    
MULTILINESTRING((100.594606800391 13.872016439113...    
LINESTRING(100.622342929363 13.9502950094115,100....    
LINESTRING(100.618133904403 14.1676090338694,100....    
LINESTRING(100.823426479749 14.2959151254166,100....    
MULTILINESTRING((100.823426479749 14.295915125416...    

Il contient à la fois des lignests et des multilinsters

Je voudrais faire le point de vue st_line_interpoler sur ces données

mais

st_line_interpolate_point ne nécessite que linetring sur la 1ère argument.

Y a-t-il des solutions à convertir de la multilinétring à une seule linetring?

ou

Comment vérifier que le multilinétring peut être converti ?

Était-ce utile?

La solution

Oui, il est possible de vérifier si une multiline peut être convertie en ligne, vous essayez d'abord de le convertir, puis de vérifier le nombre de géomphes.Si le nombre de géométries est égal à 1, cela signifie une conversion réussie de Multiline en ligne:

SELECT * FROM mytable WHERE ST_NumGeometries(ST_LineMerge(the_geom)) = 1 

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top