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 !.
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce



#AGAURAGEO

1ère Biennale de l'Information Géographique
Lyon - 17 décembre 2019

http://agaurageo.fr/

#1 Tue 05 November 2019 22:26

preliator
Membre
Date d'inscription: 17 Nov 2018
Messages: 220

Modifier colonne d'une table spatiale

Bonjour à tous,

Je dispose d'une base de donnée de points vectoriels importée dans PostGre grâce à l'outil "Exporter dans postGreSQL" de QGis, ainsi qu'une couche "Commune" représentant les communes en France.

Bien que sachant le faire sur QGis, j'aimerais pour l'exercice, avec PostGre, créer une colonne "NOM_COMMUNES" dans ma couche point qui m'indiquerait dans quelle commune se trouve chacun des points.

Effectivement, je ne sais pas trop comment m'y prendre pour modifier directement la colonne d'une couche déjà existante avec une requete SQL.

Cette requete serait similaire à ceci :

Code:

select nom_com
from communes c, points p
where st_intersects(p.geom, c.geom)

Un grand merci à vous.

Hors ligne

 

#2 Wed 06 November 2019 10:32

Ben22
Membre
Date d'inscription: 11 May 2016
Messages: 44

Re: Modifier colonne d'une table spatiale

Bonjour,

Vous pouvez utiliser la fonction Update comme ceci :

Code:

UPDATE points as t0 SET t0.nom_commune = t1.nom_commune FROM commune as t1 WHERE st_within(t0.the_geom, t1.the_geom);

En ligne

 

#3 Wed 06 November 2019 19:40

preliator
Membre
Date d'inscription: 17 Nov 2018
Messages: 220

Re: Modifier colonne d'une table spatiale

Merci beaucoup pour votre réponse. Effectivement, ça marche smile

Est-il possible directement de créer une colonne à ma table "points", qui comportera cette requête ?

Je pensais utiliser la fonction "Alter Table points".

Dernière modification par preliator (Wed 06 November 2019 19:40)

Hors ligne

 

#4 Fri 08 November 2019 17:08

baptistegmt
Membre
Date d'inscription: 17 Jan 2015
Messages: 3

Re: Modifier colonne d'une table spatiale

Bonjour,

Vous pouvez utiliser sur votre table un trigger (=déclencheur) et une fonction trigger associée qui permettront l'exécution de cette requête lors d'un insert, update, delete ou truncate.

Hors ligne

 

Pied de page des forums

Powered by FluxBB

Partagez  |