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

Suite à un problème technique intervenu entre le 22 et le 23 mars, nous avons du procéder dans la soirée du 25 mars, à la restauration de la base de données du 24 mars (matinée).

En clair, nous avons perdu vos contributions et inscriptions du dimanche 24 et du lundi 25 mars.
Nous vous prions de nous excuser.

#1 Mon 30 September 2019 09:31

erwannlh
Participant occasionnel
Date d'inscription: 8 Sep 2015
Messages: 19

difference union/unaryunion

bonjour,

la semaine derniere en travaillant sur le fait de fusionner plusieurs entités, je suis tombé sur le post suivant:

https://georezo.net/forum/viewtopic.php?id=116215

qui me donnait (merci Nicolas Ribot)

Code:

select st_unaryunion(unnest(st_clusterintersecting(geom))) as geom
from testpg;

Cette formule fonctionne bien, jusqu'ici tout va bien.


ma question:

en discutant avec un collègue, lui pensait utiliser st_union, et en testant rapidement cela semble aussi fonctionner. Est ce que quelqu'un saurait m'expliquer la différence, l’intérêt d'utiliser l'un plutôt que l'autre?

Merci smile

Hors ligne

 

#2 Mon 30 September 2019 10:49

tumasgiu
Membre
Lieu: Ajaccio
Date d'inscription: 5 Jul 2010
Messages: 1129

Re: difference union/unaryunion

Salut,

unaryunion fait la même chose qu'union,
à ceci près qu'il fusionne aussi les composants
de ses géomètres d'entrées, comme les geometrycollections et les multi-polygones.

Exemple :

Code:

select 
    st_astext(st_unaryunion(geom)) 
from 
    (values ('MULTI POLYGON(((0 0, 0 1, 1 1, 1 0, 0 0)), ((0.5 0, 1.5 0, 1.5 1, 0.5 1, 0.5 0)))')) 
        AS foo(geom)
UNION
select 
    st_astext(st_union(geom)) 
from 
    (values ('MULTI POLYGON(((0 0, 0 1, 1 1, 1 0, 0 0)), ((0.5 0, 1.5 0, 1.5 1, 0.5 1, 0.5 0)))')) 
        AS foo(geom)

Dernière modification par tumasgiu (Mon 30 September 2019 10:50)

Hors ligne

 

#3 Tue 01 October 2019 11:29

erwannlh
Participant occasionnel
Date d'inscription: 8 Sep 2015
Messages: 19

Re: difference union/unaryunion

salut,

merci smile
je vais devoir me pencher un peu en détail la dessus pour etre sur de bien comprendre tout ça, mais j'ai le départ smile

Hors ligne

 

Pied de page des forums

Powered by FluxBB