#1 Thu 14 May 2009 14:14
- floriane38
- Participant occasionnel
- Date d'inscription: 25 Aug 2008
- Messages: 17
Sql
Bonjour,
Voilà je souhaiterai réaliser deux requêtes SQL :
existe t-il des objets de la table X (ponctuel) implantés sur deux objet de la table Y (surface)
Quels sont les objets de la table Y (surface) limitrophes des objets de la table Y contenant des objets de la table X.
Plusieurs tentatives...sans résultats
Merci d'avance !
Hors ligne
#2 Thu 14 May 2009 14:21
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Sql
Salut floriane,
regarde ce doc MapInfo sans Basic ---> http://georezo.net/jparis/decharge_liste_doc.htm
là ----> 2 – Requêtes géographiques et tout particulièrement ---> 2 – 5 Requêtes basées sur la proximité
En espérant t'aider
A+
Joël
Hors ligne
#3 Thu 14 May 2009 15:17
- floriane38
- Participant occasionnel
- Date d'inscription: 25 Aug 2008
- Messages: 17
Re: Sql
Merci bien mais je n'ai pas trouvée la réponse à mes questions
Donc voilà je cherche encore ...
Hors ligne
#4 Thu 14 May 2009 16:17
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Sql
...existe t-il des objets de la tableX (ponctuel) implantés sur deux objet de la tableY (surface)
Bonjour
Cette question n'a une réponse positive que si des objets de tableY se chevauchent et que justement il y a des points de tableX dans ce chevauchement....
select * from tableX,tableY xhere tablex.obj within tableY.obj group by tableX.ID into titi
puis select ID,count(*) "nombre" from titi order by nombre desc into tata
devrait donner une table tata où les premiers (ceux du haut...) tableX.ID ont une colonne nombre > 1
Quels sont les objets de la tableY (surface) limitrophes des objets de la tableY contenant des objets de la tableX...
Il faudra passer par plusieurs étapes...et s'inspirer de l'exemple page 16/17 de ce document
Hors ligne
#5 Thu 14 May 2009 16:45
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: Sql
Re,
N'ayant pas beaucoup d'infos sur ton problème je t'ai envoyé sur un doc.
Maintenant d'après ce que je comprend pour la première requète ce que tu essayes d'avoir c'est les points qui se trouve dans des intersections de polygones
existe t-il des objets de la table X (ponctuel) implantés sur deux objet de la table Y (surface)
Si ta table de polygones dispose d'un champs "ID" (identifiant unique pour chaque polygones):
Faire une copie de ta table puis:
Code:
Select * from Ta_Table_Polygones, Copie_de_Ta_Table_Polygones where Ta_Table_Polygones.obj intersects Copie_de_Ta_Table_Polygones.obj AND Ta_Table_Polygones.ID <> Copie_de_Ta_Table_Polygones.ID into Intersections
Maintenant que la Table Intersections est crée:
Code:
Select * from Ta_Table_Points, Intersections where Ta_Table_Points.obj within Intersections.obj into Points_Contenus
La table Points_Contenus est crée cela devient plus facile pour la 2éme requète voir donc requète de proximité du doc.
Je le rapelle quand même ----> La Soluce était dans le doc!!!
Ah je le savais Maurice était dans les parages définitivement trop rapide sur du SQL
A+
Joël
Dernière modification par Spacejo (Thu 14 May 2009 16:49)
Hors ligne