Pages: 1
- Sujet précédent - QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre - Sujet suivant
#1 Fri 20 January 2017 17:42
- hugues
- Participant occasionnel
- Lieu: Fontenay-aux-Roses
- Date d'inscription: 6 Sep 2005
- Messages: 30
QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
Récent utilisateur de QGis et de son plugin cadastre suite à la perte de mon outil Arcopole je suis à la recherche de requetes SQL type nombre de logements/parcelle, nbre de commerces/parcelle, bati type logements sociaux..
J'ai bien tenté de mon coté mais je n'ai que très peu de temps..
Un grand merci d'avance
Hors ligne
#2 Mon 06 February 2017 23:15
- Zorgas
- Participant occasionnel
- Date d'inscription: 26 Nov 2009
- Messages: 16
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
bonjour
peux tu m envoyer un modèle de fiche descriptive bâti et non bati pour que je puisse essayer mes requêtes?
je crois que dans arcopole c était cela s appelle "fiche détaillée"
à bientôt
Hors ligne
#3 Tue 07 February 2017 07:18
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3199
- Site web
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
Il n'y a pas de Modèle Conceptuel de Données livré avec ce plugin ?
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#4 Tue 07 February 2017 09:42
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1160
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Si,
l'est là : http://demo.3liz.com/plugin_cadastre/sc … dastre.png
Hors ligne
#5 Tue 07 February 2017 11:57
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3199
- Site web
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
hughes : il faut partir de ce MCD et construire les requêtes appropriées.
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#6 Fri 10 February 2017 08:52
- Zenzile64
- Juste Inscrit !
- Lieu: Pau
- Date d'inscription: 5 Mar 2010
- Messages: 8
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
Je vous joins un fichier .sql que j'ai réaliser en reprenant les requêtes utilisées pour les traitements des fichiers fonciers et que j'ai adapté au MCD du plugin cadastre de QGIS.
N'étant pas un expert en SQL, je suis preneur de tout retour constructif.
Géomatiquement
Dernière modification par Zenzile64 (Fri 10 February 2017 08:53)
Hors ligne
#7 Fri 10 February 2017 09:42
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3199
- Site web
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
Ce n'est pas au niveau du SQL que ce posent des problèmes. Il s'agit plutôt du modèle, de la codification et de la valeur attribuée aux champs.(et vous n'y pouvez pas grand chose Zenzile64)
Au niveau modèle, utiliser pour des jointure des entités alphanumériques comme idu c'est pas ce que l'on fait de mieux en termes de perfs et en termes de pérennité du modèle (cf la problématique de la fusion de commune et des codes insee). Utiliser des clefs numérique de type entier long c'est mieux.
Pour la codification : "SELECT jnat, ccsub, cc1213287ty" c'est très parlant et celui qui lit les requêtes traduit ça facilement, il parle l'acronyme couramment.
Le sens attribué aux valeurs : par exemple :
jannatmin integer, -- Année d’achèvement de la construction du local le plus ancien existant sur la parcelle à la date de mise à jour du millésime des fichiers fonciers
Et bien non ! Car il s'agit de la date DECLAREE par le signataire 90 jours après l’achèvement de la construction du local, ou de la date inscrite par la commission communale en 1970 ou celle de la révision de 1980.
Qiue les choses soient claires : TOUT LES DONNEES MAJIC CONCERNANT LES LOCAUX SONT LE REFLET DE LA DECLARATION DES PROPRIETAIRES, avec tout les erreurs et imprécisions possibles.
Autre exemple
CAST(jdatat AS character varying (20)) -- Date (jjmmaaaa) de l’acte de mutation du local ou de la parcelle idu
Pour travailler tous les jours avec la valeur de ce champs je peux affirmer que c'est pas toujours vrai, bien souvent ce champs est utilisé par les agents du cadastre pour indiquer le traitement d'un contentieux. Et il ne s'agit pas dans le cas d'un acte, forcement d'un acte de mutation.
La partie restant appartenir à X lors d'une expro pour l'élargissement d'une route c'est un acte de mutation ?????
[EDIT] : Un exemple pour sélectionner une parcelle dans le modèle que nous utilisons :
SELECT commune.insee,commune.nom,section.nom as nomsec,section.inseefusion,parcelle.numero,parcelle.contenance,parcelle.geom
FROM cadastre.commune INNER JOIN cadastre.section ON idcommune=ptrcommune INNER JOIN cadastre.subsection ON idsection=ptrsubsection
INNER JOIN cadastre.parcelle ON idsubsection=ptrsubsection
WHERE insee='033' AND inseefusion='000' nAND section.nom='0A' AND numero='0271'
avec idX et ptrX : entiers longs avec un index
Dernière modification par ChristopheV (Fri 10 February 2017 10:00)
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#8 Fri 10 February 2017 10:48
- Zenzile64
- Juste Inscrit !
- Lieu: Pau
- Date d'inscription: 5 Mar 2010
- Messages: 8
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Merci pour votre retour
Juste une précision sur le sens attribué aux valeurs. Je n'ai fait que reprendre les définitions données dans les fiches produites par le CEREMA pour avoir une description rapide des champs. Je suis d'accord avec vous et je suis bien conscient des subtilités de ces données déclaratives et à part être un spécialiste en fiscalité, il n'y a que l'expérience qui peut nous montrer les limites de ces informations.
Hors ligne
#9 Fri 10 February 2017 11:15
- ChristopheV
- Membre
- Lieu: Ajaccio
- Date d'inscription: 7 Sep 2005
- Messages: 3199
- Site web
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
Je n'ai fait que reprendre les définitions données
Je sais et vous n'êtes pas le seul, d'où ma parenthèse sur le fait que vous n'y pouvez pas grand chose. Malheureusement ceci peut conduire à des bêtises. J'ai par exemple vu cette semaine un relevé de propriété émis par un logiciel vendu à une commune où la section est 'A0', ben en fait c'est A zéro que le logiciel veut écrire, il s'agit de la section 0A, car il y a aussi une section A "O" avec un O comme Olivier. C'est presque une caricature (mais c'est vrai), et le résultat de cette confusion peut être grave ...
Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close
Hors ligne
#10 Fri 10 February 2017 17:02
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1160
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Salut,
j'ai mis le script dans un gist et je l'ai commenté :
https://gist.github.com/rossini-t/b02ea … e4d788901d
Mes remarques sont purement du point de vue SQL, je ne connais pas le modèle.
Elles sont identifiées par la ligne
Code:
-- Remarque
Dernière modification par tumasgiu (Fri 10 February 2017 17:10)
Hors ligne
#11 Mon 13 February 2017 16:30
- hugues
- Participant occasionnel
- Lieu: Fontenay-aux-Roses
- Date d'inscription: 6 Sep 2005
- Messages: 30
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
Je vous remercie tous de vos retours. Je vois que j'ai affaire à des spécialistes en la matière... je débute sur le requetage SQL.
M'intéressant particulièrement à cette requete qui correspond à mes besoins :
DROP TABLE IF EXISTS locaux;
CREATE TABLE locaux AS
SELECT parcelle
FROM parcelle;
ALTER TABLE locaux
ADD COLUMN nlocmaison integer, -- Nombre de locaux de type maison
ADD COLUMN nlocappt integer, -- Nombre de locaux de type appartement
ADD COLUMN nlochabit integer, -- Nombre de locaux de type maison ou appartement
ADD COLUMN nlocdep integer,-- Nombre de locaux de type dépendances
ADD COLUMN nloccom integer, -- Nombre de locaux de type commercial ou industriel
ADD COLUMN nloccomrdc integer, -- Nombre de locaux de type commercial ou industriel situés au rezdechaussée
ADD COLUMN tlocdomin character varying(66), -- Type de local dominant sur la parcelle (en nombre)
ADD COLUMN nlocal integer, -- Nombre de locaux
ADD COLUMN noccprop integer, -- Nombre de logements occupés par le propriétaire
ADD COLUMN nocclocat integer, -- Nombre de logements occupés par un locataire
ADD COLUMN nlocsaison integer, --Nombre de logements meublés destinés à la location occasionnelle ou saisonnière
ADD COLUMN nvacant integer, -- Nombre de logements vacants
ADD COLUMN nresec integer; -- Estimation du nombre de résidences secondaires
-- nlocmaison : somme des locaux de type DTELOC = 1 sur la parcelle
-- nlocappt : somme des locaux de type DTELOC = 2 sur la parcelle
-- nlochabit : somme : nlocappt+nlocmaison
-- nlocdep : somme des locaux de type DTELOC = 3 sur la parcelle
-- nloccom : somme des locaux de type DTELOC = 4 sur la parcelle
-- nlocal : somme totale des locaux
UPDATE locaux T1 SET
nlocmaison = T2.nlocmaison,
nlocappt = T2.nlocappt,
nlochabit = T2.nlochabit,
nlocdep = T2.nlocdep,
nloccom = T2.nloccom,
nlocal = T2.nlocal
FROM(
SELECT parcelle,
COUNT(CASE dteloc
WHEN '1' THEN 1
ELSE NULL END) AS nlocmaison,
COUNT(CASE dteloc
WHEN '2' THEN 1
ELSE NULL END) AS nlocappt,
COUNT(CASE dteloc
WHEN '1' THEN 1
WHEN '2' THEN 1
ELSE NULL END) AS nlochabit,
COUNT(CASE dteloc
WHEN '3' THEN 1
ELSE NULL END) AS nlocdep,
COUNT(CASE dteloc
WHEN '4' THEN 1
ELSE NULL END) AS nloccom,
COUNT(dteloc) AS nlocal
FROM local10 GROUP BY parcelle)T2
WHERE T1.parcelle=T2.parcelle;
Je comprends l'idée de cette requête mais ne comprend ce qu'est T1 et T2... je suis débutant et vous remercie d'avance d'être compréhensif...
Merci
Hors ligne
#12 Mon 13 February 2017 16:53
- Zenzile64
- Juste Inscrit !
- Lieu: Pau
- Date d'inscription: 5 Mar 2010
- Messages: 8
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
Pour faire rapide, T1 = locaux et T2 = local10, cela permet de ne pas réécrire le nom de la table à chaque fois.
Hors ligne
#13 Mon 13 February 2017 17:04
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1160
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Je vois que j'ai affaire à des spécialistes en la matière...
Je ne suis aucunement un expert ni du SQL, ni de PostGRES, ni des données MAJIC.
Mon avis est celui d'un utilisateur plus ou moins régulier de ces technos/données.
Pour ce qui est de votre requête :
coté SQL :
Dans une requête, vous pouvez déclarer vos tables grâce a des alias, ce que sont T1 et T2.
T1 est l'alias de la table local :
Code:
UPDATE locaux T1
qui est en fait une ecriture raccourcie de
UPDATE locaux AS T1
Pour T2 c'est un peu plus compliqué, c'est l'alias de la sous requête suivante :
Code:
SELECT parcelle, COUNT(CASE dteloc WHEN '1' THEN 1 ELSE NULL END) AS nlocmaison, COUNT(CASE dteloc WHEN '2' THEN 1 ELSE NULL END) AS nlocappt, COUNT(CASE dteloc WHEN '1' THEN 1 WHEN '2' THEN 1 ELSE NULL END) AS nlochabit, COUNT(CASE dteloc WHEN '3' THEN 1 ELSE NULL END) AS nlocdep, COUNT(CASE dteloc WHEN '4' THEN 1 ELSE NULL END) AS nloccom, COUNT(dteloc) AS nlocal FROM local10 GROUP BY parcelle
Une sous-requête, est une requête qui est évaluée
avant la requête principale qui l'englobe. Elle peut se déclarer dans la clause FROM,
et vous pouvez alors la considérer comme une table temporaire, qui n'existera que
le temps de l'exécution de la requête, dont vous pourrez vous servir dans votre requête principale,
exactement comme si elle était une "vraie" table.
Comme l'indique Zenzile, les alias permettent de nommer les tables, colonnes, et expressions.
Dans le cas des tables, c'est souvent utilisé pour simplifier le nom d'une table, afin que cela soit plus
pratique/lisible, ou par exemple, quand vous joignez une table avec elle même.
Dernière modification par tumasgiu (Mon 13 February 2017 17:30)
Hors ligne
#14 Tue 14 February 2017 11:18
- hugues
- Participant occasionnel
- Lieu: Fontenay-aux-Roses
- Date d'inscription: 6 Sep 2005
- Messages: 30
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
Je suis parvenu à mes fins!
Merci Tumagsiu et Zenzile.
Bonne journée
Hors ligne
#15 Wed 12 July 2017 14:15
- anaisurba
- Participant occasionnel
- Date d'inscription: 16 Jun 2014
- Messages: 19
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour,
Comme Hugues l'explique, je souhaiterai également réaliser la même requête :
DROP TABLE IF EXISTS locaux;
CREATE TABLE locaux AS
SELECT parcelle
FROM parcelle;
ALTER TABLE locaux
ADD COLUMN nlocmaison integer, -- Nombre de locaux de type maison
ADD COLUMN nlocappt integer, -- Nombre de locaux de type appartement
ADD COLUMN nlochabit integer, -- Nombre de locaux de type maison ou appartement
ADD COLUMN nlocdep integer,-- Nombre de locaux de type dépendances
ADD COLUMN nloccom integer, -- Nombre de locaux de type commercial ou industriel
ADD COLUMN nloccomrdc integer, -- Nombre de locaux de type commercial ou industriel situés au rezdechaussée
ADD COLUMN tlocdomin character varying(66), -- Type de local dominant sur la parcelle (en nombre)
ADD COLUMN nlocal integer, -- Nombre de locaux
ADD COLUMN noccprop integer, -- Nombre de logements occupés par le propriétaire
ADD COLUMN nocclocat integer, -- Nombre de logements occupés par un locataire
ADD COLUMN nlocsaison integer, --Nombre de logements meublés destinés à la location occasionnelle ou saisonnière
ADD COLUMN nvacant integer, -- Nombre de logements vacants
ADD COLUMN nresec integer; -- Estimation du nombre de résidences secondaires
-- nlocmaison : somme des locaux de type DTELOC = 1 sur la parcelle
-- nlocappt : somme des locaux de type DTELOC = 2 sur la parcelle
-- nlochabit : somme : nlocappt+nlocmaison
-- nlocdep : somme des locaux de type DTELOC = 3 sur la parcelle
-- nloccom : somme des locaux de type DTELOC = 4 sur la parcelle
-- nlocal : somme totale des locaux
UPDATE locaux T1 SET
nlocmaison = T2.nlocmaison,
nlocappt = T2.nlocappt,
nlochabit = T2.nlochabit,
nlocdep = T2.nlocdep,
nloccom = T2.nloccom,
nlocal = T2.nlocal
FROM(
SELECT parcelle,
COUNT(CASE dteloc
WHEN '1' THEN 1
ELSE NULL END) AS nlocmaison,
COUNT(CASE dteloc
WHEN '2' THEN 1
ELSE NULL END) AS nlocappt,
COUNT(CASE dteloc
WHEN '1' THEN 1
WHEN '2' THEN 1
ELSE NULL END) AS nlochabit,
COUNT(CASE dteloc
WHEN '3' THEN 1
ELSE NULL END) AS nlocdep,
COUNT(CASE dteloc
WHEN '4' THEN 1
ELSE NULL END) AS nloccom,
COUNT(dteloc) AS nlocal
FROM local10 GROUP BY parcelle)T2
WHERE T1.parcelle=T2.parcelle;
Mon objectif est d'avoir une table complète avec la parcelle, le(s) locaux présents, leur occupation,... mais je n'y parviens pas.
Etant donné que Hugues dit y être parvenu pourriez vous m'aider ?
En vous remerciant,
Hors ligne
#16 Wed 12 July 2017 14:54
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1160
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Salut,
un peu plus de précision est souhaitable
si vous espérez obtenir de l'aide sur un problème.
Hors ligne
#17 Wed 12 July 2017 15:54
- anaisurba
- Participant occasionnel
- Date d'inscription: 16 Jun 2014
- Messages: 19
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Je travailles avec les données MAJIC sur une commune et je souhaiterai réaliser un référentiel foncier. SAuf qu'en utilisant le plug in cadastre je n'ai pas par exemple le type de local...
En fait pour essayer d'être claire, je n'arrive pas à faire des traitements hormis ceux déjà fait par la plug in et les requêtes simples du type : select parcelle from local10 where dnatlc='V'
Je voudrais donc créer une table la plus complète possible où j'aurai par parcelle : les locaux présents, les types de locaux, leur vacance... Mon objectif est juste de pouvoir observer le mode d'occupation des sols sur un secteur et repérer les espaces mutables (friches et/ou parcelles avec bâtis vacants)
Hors ligne
#18 Thu 13 July 2017 09:33
- tumasgiu
- Membre
- Lieu: Ajaccio
- Date d'inscription: 5 Jul 2010
- Messages: 1160
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Vous devriez vous servir du MCD fourni afin de pouvoir construire la requête qui vous convient :
Si,
l'est là : http://demo.3liz.com/plugin_cadastre/sc … dastre.png
Hors ligne
#19 Wed 06 December 2017 23:37
- Zorgas
- Participant occasionnel
- Date d'inscription: 26 Nov 2009
- Messages: 16
Re: QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre
Bonjour
Je reviens sur ce poste pour savoir qui a réussi à faire la requête car je n’y arrive toujours pas.
Si quelqu un voudrais bien nous aider à la concevoir .
Cordialement,
Hors ligne
Pages: 1
- Sujet précédent - QGIS & Plugin Cadastre & Majic & PostGis: Requêtes base cadastre - Sujet suivant