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 Wed 12 July 2023 14:46

ccam86
Participant occasionnel
Date d'inscription: 28 Sep 2022
Messages: 21

SQL Qgis avec Gestionnaire BD

J'ai un petit problème SQL dans QGIS, je souhaite réaliser une requête pour distinguer chaque action.

Les couches en question sont des couches surfacique | Géométrie de type Polygone (MultiPolygon).
La chaque couche est organiser au niveau des champs de la même manière.

Chaque action est repartie par type de champ.
Voici les champs suivant par type d'action.

Couche avec les actions surfacique:
"LA_intripi" = intervention ripisylve

Couche avec les actions Linéaire :
"EL_TVX" = Etat linéaire travaux
"EL_ANNTVX"

Couche avec les actions Ponctuel :

"EP_TVX" = Etat ponctuel travaux
"EP_ANNTVX"

Chaque couche indépendamment entre elle comporte des actions différentes.

L'identifiant unique va correspondre au champ.
"LA_ID" et "proprietai" attention plusieurs propriétaires peuvent avoir la même parcelle et le même propriétaire plusieurs parcelles.

Exemple :
-------------------------
La_ID | proprietai |
---------|---------------
0325 | Marie
0325 | paul
0325 | jule
0325 | Marie
0125 | marie
0125 | helene

Pour 4 actions ponctuelles ou linéaires ou surfaciques, il faut multiplier par 4 le même multipolygone parcellaire pour le même propriétaire pour avoir 4 actions différentes sur chaque multipolygone.

4 ponctuels sur 1 parcelle = 4x la même parcelle.
Selon le résultat, nous multiplions par le nombre de propriétaires.

4 fois, la même parcelle x 2 propriétaires différents = 8 fois la même parcelle

Attention --> !! Sauf que certaines actions et années sont les mêmes pour le même multipolygone avec le même propriétaire et je souhaiterais les regrouper, mais attention cela peut aussi varier les années d'actions peuvent aussi changer pour le même propriétaire !!


Enfin voici les explications comme exemple de cas type du problème et ensuite ce que je souhaiterais.
Cas type de mon problème feuille excel en jaune et en vert ce que je souhaite avoir en résultat (voir excel fournit)

Finalement, la requête peut être simplement de supprimer les valeurs NULL présentes pour les différents champs qui définissent les actions et les années de réalisation afin d'avoir au final 1 couche qui regroupe les autres couches avec des valeurs non NULL sauf pour les champs comportant des valeurs.

Merci à tous pour vos lumières !


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#2 Wed 19 July 2023 13:57

ccam86
Participant occasionnel
Date d'inscription: 28 Sep 2022
Messages: 21

Re: SQL Qgis avec Gestionnaire BD

Solution trouvée voici le script en PJ et écrit :

SELECT code_insee, section, num_parcel, idu, dnomlp, dprnlp, nom_usage, prenom_usa, proprietai, adresse_pr, LA_ID, LA_INTRIPI, EL_TVX, EL_ANNTVX, EP_TVX, EP_ANNTVX, geometry
FROM Couche_regroupement
WHERE NOT (LA_INTRIPI IS NULL AND EL_TVX IS NULL AND EL_ANNTVX IS NULL AND EP_TVX IS NULL AND EP_ANNTVX IS NULL)
GROUP BY LA_ID, proprietai, LA_INTRIPI, EL_TVX, EL_ANNTVX, EP_TVX, EP_ANNTVX;


N'hésitez pas à poser des questions si vous souhaitez afin d'échanger sur ce poste et de voir même de faire plus simple ! ^^

À bientôt !
ccam86


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

Pied de page des forums

Powered by FluxBB