IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes PostgreSQL Discussion :

Union d'objets géométriques


Sujet :

Requêtes PostgreSQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut Union d'objets géométriques
    Bonjour,

    Je souhaite fusionner deux ou plusieurs objets géométriques (des troncons de cours d'eau) en un seul mais je n'arrive pas à trouver comment faire sous Postgres
    Ce serait avec une fonction comme GeomUnion (the_geom,the geom) RETURN the geom? Mais je ne vois pas trop comment construire la fonction, avec quoi je peux fusionner les 2 objets J'aurais besoin d'être aiguiller..

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 571
    Points
    52 571
    Billets dans le blog
    5
    Par défaut
    Il existe une fonction d'agrégation géométrique pour ce faire.
    Extrait de l'article que j'ai écrit sur les SIG et SGBDR :
    http://blog.developpez.com/sqlpro/p9...n-geographiqu/
    http://blog.developpez.com/sqlpro/p9...geographiqu-2/

    "
    PostGIS offre une fonction d'agrégation des objets géométrique afin de les "concaténer", de nom ST_Union. Pour faire cette même chose sous MS SQL Server il faut utiliser une requête récursive, ce qui est moins pratique.
    "

    Bref, j'ai l'impression que vous n'avez pas bien cherché, car avec les mots clefs "SIG postgreSQL union" dans la recherche google de DVP vous seriez tombé direct dessus !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Et pourtant j'avais bien trouvé ces pages! Malheureusement dans mon cas elle ne m'aide pas trop Je n'arrive pas à trouver d'aide m'expliquant comment utiliser cette fonction..

    Mais c'est déjà une bonne chose que vous me confirmiez que cette fonction existe

    Dans la page que vous cité il ne semble pas y avoir d'exemple d'illustration de la méthode Union avec PostGreSQL / PostGis.. Auriez-vous un exemple à proposer?

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 571
    Points
    52 571
    Billets dans le blog
    5
    Par défaut
    Exemple 1 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT ST_ubion(MacolonneGeometrique)
    FROM   MaTable
    Si d'autres colonnes, comme c'est un agrégat, prévoir un GROUP BY

    Exemple 2 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT ST_ubion(MacolonneGeometrique), UneAutreColonne
    FROM   MaTable
    GROU  BY UneAutreColonne
    Bref, mon livre sur SQL vous serait sans doute d'une grande utilité !!!!

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Merci!! C'est déjà plus clair pour moi

    En plus j'ai trouvé un moyen (à peine plus long) de le faire faire par QGIS, en fusionnant les entités

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Modélisation d'objet géométrique 3D simple et efficace ?
    Par valda117 dans le forum Développement 2D, 3D et Jeux
    Réponses: 3
    Dernier message: 12/06/2014, 14h48
  2. UNION d'objet dans designer
    Par Nicolai dans le forum Designer
    Réponses: 4
    Dernier message: 04/10/2011, 23h59
  3. Erreur 424: objet manquant avec methode union
    Par JonSnow dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/04/2010, 09h53
  4. Réponses: 3
    Dernier message: 30/01/2007, 09h01
  5. Réponses: 13
    Dernier message: 01/09/2005, 15h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo