Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Tue 28 November 2017 20:18

tematim
Juste Inscrit !
Date d'inscription: 27 Oct 2017
Messages: 7

Ajouter plusieurs linestring

Bonjour,

Je possède une table avec 41 linestring.

Je souhaite ajouter certaines lignes car elles ont un caractéristique en commun.

J'ai essayé avec ST_Union, ST_LineMerge et d'autres méthodes mais impossible d'obtenir un bon résultat.

Certains cables sont bien additionnés mais des cables bizarres sont également dessines.

Cordialement

Hors ligne

 

#2 Thu 30 November 2017 11:03

Sylvain M.
Participant assidu
Lieu: Saint-Pierre-des-Nids (53)
Date d'inscription: 8 Sep 2005
Messages: 981

Re: Ajouter plusieurs linestring

Je souhaite ajouter certaines lignes car elles ont un caractéristique en commun.


Personnellement, je ne comprends pas ce que vous voulez faire :
- ajouter des lignes d'une autre table ?
- fusionner des lignes entre elles au sein d'une table ?
...

Il faudrait que vous précisiez la structure de vos données et ce que vous voulez faire exactement.

Bon courage !


Sylvain M.

Hors ligne

 

#3 Thu 30 November 2017 14:04

ftsig31
Participant occasionnel
Date d'inscription: 16 Feb 2011
Messages: 29

Re: Ajouter plusieurs linestring

S'il faut agréger plusieurs linestring contigües en évitant de faire des multilinesting, j'utilise la requête suivante :

Exemple à partir d'une table de linestring qui représentent des tronçons de routes, on agrège les tronçons contigus par commune et nom de route :

INSERT INTO test.route1  (route,code_insee,nom,geom)
(
SELECT route, code_insee, nom, (ST_Dump(geom)).geom AS geom
FROM
    (
    SELECT route, code_insee, nom, ST_LineMerge(ST_collect(geom)) AS geom
         FROM test.result_recale_rd_commune
         GROUP BY route, code_insee, nom
    ) AS street_union
)

C'était la question?

Hors ligne

 

Pied de page des forums

Powered by FluxBB