Message posté par : BALDE
----------------------------------------
Bonjour,
Dans ma table d'entrée (historique des modifications du bâti d'OSM), j'ai des versions de modification en double (cf. champ "vway"). Par exemple pour l'entité 36705332, j'ai beaucoup de valeurs (3, 4, 5, 6 ...) qui apparaissent plus de deux fois dans la table pour un même objet.
Pour supprimer les lignes dont les versions (vway) sont doublées pour le même objet, J'ai créé la requête SQL ci-dessous.
-----------------
Code :
DELETE FROM tabtest
WHERE id IN (
SELECT
osm_id
FROM (
SELECT
osm_id,
row_number() OVER w as rnum
FROM tabtest
WINDOW w AS (
PARTITION BY osm_id
ORDER BY osm_id
)
) t
WHERE t.rnum > 1);
-----------------
Cependant, cette requête supprime toutes les entités de ma table or mon idée c'est de garder une version différente par objet.
Je souhaiterais savoir si quelqu'un a eu à faire ce type d'opération.
J'ai joint ci-dessous ma table d'entrée.
Merci d'avance
----------------------------------------
Ce message est accompagné de fichiers, pour les télécharger, suivre le lien ci-dessous.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=345189#p345189
Pour y répondre : geobd(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
Message posté par : Lebelge
----------------------------------------
@Nicolas,
Avoir ajouté des règles sur le routeur de la connexion internet ne me dit rien ... par contre je suis passer par Le Pare-feu Windows Defender avec fonctions avancées pour créer une règle de trafic entrant sur le port 5432, cette opération est-elle semblable à votre question ? sinon comment ajouter des règles sur le routeur ?
Je ne sais te dire s'il y a un serveur SSH qui tourne sur le serveur PG ...
Bien à vous,
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=345021#p345021
Pour y répondre : geobd(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
Message posté par : Nicolas Ribot
----------------------------------------
Bonjour,
Avez-vous ajouté des règles sur le routeur qui fait la connexion internet, règles qui autorisent le port 5432 et redirigent le traffic vers la bonne machine, celle hebergeant le serveur pg ?
Concernant SSH, vous avez bien un serveur SSH qui tourne sur le serveur PG ?
Nicolas
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=345019#p345019
Pour y répondre : geobd(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
Message posté par : freedfall (freedfall(a)gmail.com)
----------------------------------------
Bonjour à tous,
Je débute en SQL et je butte sur le problème suivant:
J'ai à disposition une table (t1) contenant des objets ayant un point de début (t1.fk_pt_debut) et un point de fin (t1.fk_pt_fin) ainsi qu'une géométrie point (t1_geom)
les géométries des points de début et de fin (t2_geom) se trouvent dans une autre table (t2)
Je souhaiterais effectuer un UPDATE de la géométrie de la table t1 avec une moyenne des points de début et de fin.
J'effectue donc la requête suivante:
UPDATE t1
SET t1.geom = (
SELECT st_centroid(st_union
(
(SELECT t2.geom FROM t2
JOIN t1 ON t2.id = t1.fk_pt_debut
WHERE t1.id = '1')
,
(SELECT t2_geom FROM t2
JOIN t1 ON t2.id = t1.fk_pt_fin
WHERE t1.id = '1')
)
)
)
WHERE t1.id = '1'
cette requête fonctionne pour un objet.
la table t1 disposant de beaucoup d'objet, je souhaite effectuer cette requête sur toute la table, c'est la que je rencontre mon problème: comment affecter cette requête à toute la table?
Merci d'avance pour vos réponses ou vos pistes de réponses
Excellente journée à vous
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=345008#p345008
Pour y répondre : geobd(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
Message posté par : sp_ce
----------------------------------------
Bonjour,
Je souhaite intégrer des plans de géomètres fournis au format DXF dans une base de données PostgreSQL.
Après avoir importer ces données dans QGIS, je m'interroge sur la méthode à suivre pour créer, organiser et actualiser la base de données à chaque nouvel réception de plans.
Merci, ( :
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=344878#p344878
Pour y répondre : geobd(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
Message posté par : Demonshine
----------------------------------------
Bonjour,
je veux dupliquer une ligne d'une table dans la même table sans copier la clé primaire (fid) car elle ne peut pas être en double dans la table.
Il faut qu'un nouveau fid soit incrémenté automatiquement sauf que j'obtiens une erreur comme quoi le fid viole la contrainte not null.
Auriez-vous une solution pour remédier à ce problème ?
Merci d'avance,
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=344896#p344896
Pour y répondre : geobd(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
Message posté par : Lison94
----------------------------------------
Bonjour,
J'ai téléchargé la BDD lovac et je souhaite l'intégrer dans ma BDD postgis. Pour cela j'ouvre SQL shell, je me connecte à ma base de données et je tape la formule suivante : bdd-# psql -U postgres -h xxx -d nom de ma bdd -f "chemin d'accès au fichier sql"
En retour je n'ai pas de message d'erreur mais il ne se passe rien dans ma bdd.. je pensais que le fichier serait dans le schéma public mais non..
Y a t-il une autres façon pour intégrer les tables du fichier sql directement dans un schéma de ma base ?
Merci :)
Lison
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=344818#p344818
Pour y répondre : geobd(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
Message posté par : BALDE (bailobalde2018(a)gmail.com)
----------------------------------------
Bonjour,
J'essaye en ce moment d'automatiser sous PostgreSQL le processus de typologie de l'historique des modification des données importés dans OpenStreetMap. La typologie de ces données se fait à l'aide du champs tags, lat(latitude) et lon(longitude). Le champ tags permet de voir les changements et ajouts et suppressions de tags réalisés entre les versions d'un même objet (nb: un objet peut avoir jusqu'à 8 versions). Quant aux champs lat et lon, ils permettent de détecter les changements de position d'un objet, et cela par la différence de coordonnées entre les versions du même objet.
Pour faire cette typologie, j'ai d'abord découper le champ tags en plusieurs champs.
En revanche, je ne sais pas trop comment faire une fonction qui parcours ma table ligne par ligne en comparant les tags mais aussi les latitudes ou longitudes de chaque versions d'un objet à celle précédente et mettre dans mon champs typemodif "enrichissement" pour les ajouts de tags, "modification valeur" pour les modifications de valeur à l'intérieur d'un tags, "suppression" pour les suppressions, "deplacement" pour le changement de coordonnées d'un même objet, "enrichissement et modification valeur" lors qu'on observe à la fois un ou des enrichissement(s) et une modification de valeur et "enrichissement et deplacement" lors qu'il y a ajout de tag(s) et modification de coordonnées.
La structure de ma table (histpolice_donneevectimport) est comme suit :
-osm_id : identifiant de l'objet
- vnode : versions de modification de l'objet
- tags mais découper en 20 champs (1 tag par champ et par version) :
- lat : latitude
- lon : longitude
- typemodif : type de modification (mais vide pour le moment)
Je souhaiterais savoir si quelqu'un a déjà fait ce type de traitement ou a une idée sur la façon de procéder ?
Merci d'avance
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=344347#p344347
Pour y répondre : geobd(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
Message posté par : Tony EMERY
----------------------------------------
Bonjour à tous.
Voici ma problématique :
j'ai, d'un côté, une liste de 6 tables contenant des grilles (10km, 5km, 2km, 1km, 500m et 200m).
De l'autre, j'ai une table d'iris contenant des analyses statistiques.
Je souhaite découper l'une avec l'autre de manière automatique avec un truc du genre :
je créé une table contenant la liste des tables qui me servent à découper ma table des iris :
-----------------
Code :
drop table if exists temp.liste_grilles_hexagonales;
create table temp.liste_grilles_hexagonales (fid serial,nom_table varchar(50));
insert into temp.liste_grilles_hexagonales values
(1,'hexagrille_10km'),
(2,'hexagrille_5km'),
(3,'hexagrille_2km'),
(4,'hexagrille_1km'),
(5,'hexagrille_500m'),
(6,'hexagrille_200m')
;
-----------------
J'ai créé une fonction qui lit cette première table, découpe les tables et met le résultat de tout ça dans une nouvelle table.
Dans un premier temps, je suis parti d'une boucle juste pour créer une table pour chaque ligne :
-----------------
Code :
create or replace function temp.lecture_grilles(force_drop int default 0)
returns void as
$body$
declare echelle record;
begin
for echelle in select * from temp.liste_grilles_hexagonales loop
execute format('drop table if exists %I','temp.'||echelle.nom_table||'_sql');
execute format('create table %I (id serial primary key)','temp.'||echelle.nom_table||'_sql');
end loop;
end;
$body$ language plpgsql;
-----------------
Mais cela ne fait rien : pas de table créée...
Auriez-vous une idée ?
Merci d'avance.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=344712#p344712
Pour y répondre : geobd(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
Message posté par : Ricola62
----------------------------------------
Bonjour,
J'ai besoin de confirmations et d'éclaircissement au sujet de ces deux fonctions de Postgis
En effet st_intersects est beaucoup plus consommatrice en temps d'exécution de la requête que st_overlaps.
A quels moments privilégier l'une ou l'autre de ces fonctions?
Merci
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=344622#p344622
Pour y répondre : geobd(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