Bienvenue! Inscrivez-vous et rejoignez notre communauté :)
  • Login:

Bienvenue sur Forum SIG - Systèmes d'Information Géographique et Géomatique.

Bienvenue sur le forumSIG. S'il s'agit de votre première visite, assurez vous de faire une recherche préalable dans les FAQ SIG. Vous devez vous inscrire avant de pouvoir poster.

Affichage des résultats 1 à 3 sur 3
  1. #1

    Date d'inscription
    juin 2016
    Localisation
    Manosque (04)
    Organisme
    Commune
    Âge
    36
    Messages
    2

    Par défaut Requête pour obtenir une somme de surfaces

    Bonjour,

    Je pense que ma question doit avoir une réponse très rapide mais je ne trouve pas encore la solution...
    J'ai un fichier shape nommé "ZONE", il a comme attribut une colonne LIBELLE et une colonne Surf_ha. La colonne LIBELLE contient plusieurs entités de valeur 'A', plusieurs entités de valeur 'U', etc... auquel sont donc associé des surfaces.

    Je vais devoir modifier les surfaces des entités régulièrement pour atteindre des seuils demandés et je voudrais donc obtenir à chaque modification la somme des surface par LIBELLE (la somme de la surface de toutes les entités de LIBELLE 'A', de toutes les entités de LIBELLE 'U', etc)
    Il existe l'outil statistiques mais je ne trouve pas la bonne expression à utiliser pour avoir la somme de ma colonne Surf_ha groupée par LIBELLE... ou je souhaiterais au moins obtenir la somme des surfaces uniquement pour les LIBELLE 'A', j'en demande peut être un peu trop en voulant obtenir les résultats de tous les LIBELLE en même temps.

    Quelqu'un qui s'y connait en SQL pourrait peut être me donner la solution :
    - soit en passant par l'outil statistique (mais je pense n'obtenir que la somme des surfaces d'un seul LIBELLE à la fois)
    J'ai essayé cette requête SQL mais elle semble incorrecte : Select sum(surf_ha) where "LIBELLE"='A'
    - soit en passant par je ne sais quel outil pour pouvoir afficher directement le résultats des sommes de surfaces pour tous les LIBELLES
    en utilisant une requête comme celle ci : Select "LIBELLE", sum (Surf_ha) from ZONE group by "LIBELLE"

    Est-ce possible de le faire ?
    Merci d'avance pour vos idées !
    Juliettam

  2. #2

    Date d'inscription
    janvier 2008
    Messages
    50

    Par défaut Re : Requête pour obtenir une somme de surfaces

    Bonjour,
    Plusieurs pistes :

    - une instruction SQL est effectivement adaptée, et ta dernière rédaction est correcte (tu pourrais néanmoins utiliser un alias pour donner un nom au champ somme des surface : sum(Surf_ha) as somme_surface). Tes données étant dans une couche de type shape, il faudra lancer cette instruction avec l'outil "virtual layers" qui permet d’exécuter du SQL pour n'importe quelle source de données, y compris du shp. Cette couche sera ensuite dynamiquement liée à la couche d'origine (c'est à dire que les mises à jour seront directement répercutées). Cette couche est 'virtuelle' comme son nom l'indique : elle n'est pas enregistrée en tant que fichier. Elle sera par contre enregistrée en tant que couche dans le projet si tu l'enregistre.
    - Tu pourrais faire la même chose en créant une base de données de type "Spatialite" (simple et pertinent pour un usage monoposte), ou Postgres (plus compliqué et pertinent pour des usages plus poussés).
    - Enfin, tu peux utiliser l'extension GoupStats, mais alors le calcul ne sera pas dynamique.
    - dernier conseil : ta colonne "surf_ha" n'est elle même pas dynamiquement liée au dessin des objets : il faut donc que tu mette à jour à chaque fois avec la fonction $area. Pour éviter d'avoir à y penser, tu peux utiliser l'extension Autofields qui créer des champs automatiques...

    Bonne suite.
    Jean

    -
    Dernière modification par tijan ; 17/09/2017 à 14h24.

  3. #3

    Date d'inscription
    juin 2016
    Localisation
    Manosque (04)
    Organisme
    Commune
    Âge
    36
    Messages
    2

    Par défaut Re : Requête pour obtenir une somme de surfaces

    Merci beaucoup tijan, je n'ai eu le temps que de tester la première piste qui fonctionne très bien en effet !!
    J'essaierais les autres par la suite mais déjà c'est parfait.
    Encore merci et bonne journée !

    Juliettam
    Juliettam

 

 

Discussions similaires

  1. [ArcGIS 10.x] Somme des surfaces de polygones lors de fusion
    Par bfery dans le forum Assistance Technique
    Réponses: 0
    Dernier message: 26/01/2016, 11h41
  2. [QGIS 2.x] PAS la même somme de surfaces entre QGIS / MAP INFO ?
    Par MaéSIG dans le forum Assistance et Programmation
    Réponses: 13
    Dernier message: 19/08/2015, 18h20
  3. [QGIS 2.x] Calculer une somme de surfaces dans une grille
    Par marion_cha dans le forum Assistance et Programmation
    Réponses: 2
    Dernier message: 30/06/2014, 12h14
  4. [ArcGIS 10.x] Requête SQL pour obtenir les rangs des points
    Par audreycb dans le forum Assistance Technique
    Réponses: 0
    Dernier message: 15/02/2013, 18h24
  5. [ArcGIS Server 9.x] Calcul d'une somme de surfaces
    Par Claire74 dans le forum Programmation
    Réponses: 4
    Dernier message: 03/05/2011, 15h21

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •