Message posté par : SIG_MontluCo
----------------------------------------
Bonjour à toutes et tous,
Utilisateur depuis plusieurs années de Qgis, je débute depuis quelques mois seulement
l'approche de requetages SQL dans Postgresql et en codage Python.
Ma problématique est la suivante :
Je travaille sur les deux fichiers d'adresses :
- celui de notre BAL (Base d'Adresses Locales), issu de la BAN (Base d'Adresses
Nationale), pour lequel j'ai créé un script automatique depuis un csv au format BAL
pour créer en automatique une table Postgre bal_montlu (14874 adresses)
- celui du fichier RIL de l'INSEE, avec création là aussi d'un script auto et
d'une table insee_ril (12042 adresses)
Géométriquement, les deux sont des ensembles de points.
J'ai pu avec le requetage spatial de Qgis savoir combien de points étaient superposés
dans les deux tables, il y en a 7092.
J'ai écrit un script python pour essayer de faire la même chose puis dans un deuxième
temps de trouver les points des deux tables non identiques :
...
conn.autocommit=True
cur = conn.cursor()
sql_select_bal_equals_ril='''CREATE TABLE BAL_equals_RIL AS
SELECT DISTINCT a.*
FROM bal_montlu a, insee_ril b
WHERE ST_equals(a.pt, b.pt) AND a.pt &&
b.pt
'''
cur.execute(sql_select_bal_equals_ril)
.../
La requête ne plante pas mais le script mouline en boucle...
Si la requete fonctionnait j'aurais ensuite ajouté une négation de condition sur le
ST_equals pour trouver les points non identiques des deux tables.
Pourtant les nombres de points des deux tables restent somme toute très restreints...
Certains d'entre vous auraient-ils une aide technique à m'apporter ?
Vous en remerciant par avance,
David, Montluçon
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=367289#p367289
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net