Message posté par : neskuik01
----------------------------------------
Bonjour,
j'ai une table avec plusieurs champs integer comportants chacun une année : an_deb_chantier et an_control.
je cherche à faire une selection toute basique des chantiers ayant débuter avant 2015 donc les inspections ont été réalisées après cette date ET ou l'on possède bien une date de début de chantier.
j'ai donc :
-----------------
Code :
SELECT * FROM chantier WHERE an_deb_chantier is not null AND an_deb_chantier < 2015 AND an_control > 2015
-----------------
et en retour je recois bien un résultat mais qui me retourne des an_deb_chantier qui sont null, supérieure ou inférieur à 2015. Bref pas du tout le retour attendu.
(j'arrive à filtrer en utilisant des CTE mais bon je pense qu'il y'a plus simple).
Est-ce-que c'est possible sans passer par une cte de définir une hierarchie des conditions ?
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=347071#p347071
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 : image95
----------------------------------------
Bonjour,
Sous Postgresql/postgis, j'avais créé un compte superuser pour moi.
Dans qgis, je vois bien les schemas et je peux sans problemes voir et charger les tables.
Je souhaite créér un autre compte simple user juste pour pouvoir dans qgis
acceder et charger dans qgis la table.
Dans pgadmin j'ai créé un nouveau role avec pour privileges "can login".
Au niveau des schemas, lorsque je fais :
GRANT SELECT ON ALL TABLES IN SCHEMA TO USER
la requete est bien reconnue et effectuée.
Mais dans qgis, je ne vois que la structure des schemas, je ne vois pas la liste des tables.
D'où peut venir l'erreur? Aurais je oublié quelque chose?
Merci.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=347097#p347097
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 : Arnaud LEHALLAIS (arnaud.lehallais(a)manche.fr)
----------------------------------------
Bonjour,
je souhaite forcer la saisie des numéros de parcelle cadastrale (ex : 50129000AB0010) dans la colonne idu d'une table POSTGRE.
Le but est de forcer les utilisateurs à saisir uniquement des chiffres (0 à 9) et des lettres en majuscules sans accent (A à Z).
J'ai réussi à créer une contrainte pour éviter les saisies NULL et obliger la saisie des 14 caractères requis.
ALTER TABLE patrimoine_dep
ADD CONSTRAINT patrimoine_dep_idu_ck CHECK (character_length(idu::text) = 14);
Quelqu'un aurait-il une idée?
D'avance merci.
Cordialement
LEHALLAIS Arnaud
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=347078#p347078
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 : neskuik01
----------------------------------------
Bonjour,
Ma question va vraiment paraitre bête mais bon. J'ai du mal avec la logique des types de jointure couplé au prédicat géométrique.
J'ai une table A (4000 objets à l'intérieure B) et une table B (19 000 objets)
Je veux selectionner tous les éléments de B et prendre les éléments de A contenu dans B en ne prenant que les valeurs max pour le champ date de A grouper selon l'identifiant de B (en gros si j'ai deux points A je veux que seule la valeur max soit prise en compte ).
j'ai fait une requête :
-----------------
Code :
select
b.id,
max(a.date_obs)
from tableB b
LEFT JOIN tableA a
ON
st_within(a.geom,b.geom)
group by b.id
-----------------
et je me retrouve avec seulement 1900 objets , alors que j'en attends 1900 donc 4000 avec une valeur de dates non nulle.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=346979#p346979
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,
L'union ou union all est obligatoire dans une CTE recursive, c'est comme ca qu'a chaque itération, le résultat précédent peut etre ajouté au résultat courant.
Plusieurs erreurs dans votre code:
• la cte déclare 3 champs alors que votre select en liste 5: les champs déclarés dans la cte doivent correspondre aux champs des select de la CTE (vous pouvez omettre la déclaration des champs dans la cte aussi)
• il manque une virgule avant le dernier champ du premier select (t.pollu_19).
• il manque une condition de stop je pense dans la partie UNION de la CTE: sans cela, la recursion ne s'arrete jamais.
La logique de ce type de CTE n'est pas facile a comprendre je trouve: essayez sur un exemple simple (peu de lignes dans la table de départ) pour vous familiariser avec ce concept de récursion. (la doc donne qq exemples, avec notamment la gestion des conditions de stop)
Nicolas
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=345961#p345961
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 à tous,
J'ai crée une BD postgis que j'utilise sur qgis. J'y ai notamment importer des projets QGIS. Je souhaite que d'autres personnes aient accès à la lecture de ses données via postgis sur qgis.
Comment procéder ? En sachant que nous travaillions sur la même connexion. Faut-il modifier le fichier pg_hba.conf ? Ensuite faut-il modifier les roles et users dans pgadmin ?
Les information que j'ai pu trouver ne spécifient pas si il faut faire cette double modification.
Avez vous des idées ou ressources explicatives ?
Merci par avance.
Lison
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=340676#p340676
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 : Theos2000
----------------------------------------
Bonjour,
J'ai souhaité me replonger dans un travail effectué sur Pg_routing il y a 2 ans. Or aprés plusieurs sauvegardes et restaurations de cette base lorsque je lance mes requetes avec PG_routing ca me dit : "la fonction pgr_drivingdistance(unknown, integer, numeric, boolean, boolean) n'existe pas....."
Est ce que quelqu'un a déja vu ca ? j'ai vérifié que le shéma topology et que les couches n'avaient pas été modifié et que les couches mobilisés pour le calcul d'isochrone existaient bien, ce qui est le cas...
Du coup je comprend pas trop pourquoi un tel message....
Merci
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=334908#p334908
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 : neskuik01
----------------------------------------
Bonjour,
J'ai une requête lourde (certains savent déjà laquelle ^^), ou j'additionne les valeurs au fil de l'eau. Sur un très faible volume de données (30 écritures) celle ci fonctionne, en revanche lorsque je passe sur un volume plus conséquent (11 000 enregistrements) j'ai systématiquement un échec d'écriture.
Je me suis rapproché du SI afin de voir les capacités allouées à la base et augmenter les ressources.
J'ai fait :
* vacuum analyse & index sur les données
* passé de 2 go à 8 go la RAM,
* modifié les paramètres de cache et mémoire de travail de postgres.
et rebelotte message d'erreur. J'ai du coup rapatrier les données sur ma base local (j'ai plus d'espace disque disponible), re-éxécuter la requête, et la ca tourne beaucoup plus longtemps mais vient un moment ou l'intégralité de l'espace disque est saturé et j'en arrive au même point.
Je suis entrain de faire un test en faisant sur un échantillon plus gros en ajoutant une limite => "select * from (with recursive ...) as tab limit 10;" mais pareil ca mouline dans le vide ..
La question que je me pose, est-ce-qu'augmenter encore plus la ram sur le serveur serait utile ? y'aurait-il un bridage interne à la base qui fait que la requête ne passe pas ?
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=346492#p346492
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 : image95
----------------------------------------
Bonjour,
Avec Postgis, j'ai une couche de polygones trames bleue A à couverture nationale.
Je souhaite simplement la limiter selon l'emprise d'une autre table de polygones B.
Je souhaite qu'en sortie toutes les geometries de A qui touchent B soient conservées dans leur intégralité, au delà du périmètre commun aux deux tables A et B. Je ne veux donc pas d' un découpage.
Pourriez vous me dire comment faire ?
J'avais fait celà mais cette requete me decoupe les geometries :
CREATE table trame_bleue_AOI_usefull_only_s as (
SELECT n_srce_cours_eau_s_000.*,
st_intersection(n_srce_cours_eau_s_000.geom, masque_temp.geom) AS geom_intersect
FROM inpn.n_srce_cours_eau_s_000,
inpn.masque_temp
WHERE st_intersects(n_srce_cours_eau_s_000.geom, masque_temp.geom));
Merci.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=346478#p346478
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