#1 Tue 09 June 2009 10:12
- guillaume
- Participant actif
- Date d'inscription: 5 Sep 2005
- Messages: 66
Jeux récréatifs tirés d'Hello GeoWorld
Bonjour à tous,
dans la dernière lettre d'information de Geoconcept "Hello Geoworld", la traditionnelle page récréative est consacrée aux départements français, avec les questions suivantes : (voir PJ, publiée ici avec l'aimable autorisation de son auteur : Stéphane RASSE de Geoconcept".)
Les départements partageant une limite avec 4 départements
Les départements dont le n° est plus petit que ceux de tous les départements limitrophes
Les départements dont la population est supérieure à celles de tous les départements limitrophes
Les départements dont le nom n'évoque pas le nom d'une rivière
Les départements dépassant les 1000 m d'altitude
Les départements dont l'altitude minimale > 150 m
Les 24 départements les plus étendus
Les 24 départements avec le plus grand périmètre
Les 24 départements avec la plus faible densité de population
Les 24 départements comportant le plus de communes.
Etant joueur par nature, j'ai voulu tester MapInfo et à l'aide d'une table des départements, une des répertoires géographiques des communes, une de l'hydrographie, une table grid au pas de 250 m, j'ai essayé de trouver les réponses. Je dois avouer que les 3 premières sont restées sans réponses, la 4ème m'a offert beaucoup de résistance, la solution trouvée ne me donne pas entière satisfaction.
Alors si vous avez le temps, l'envie (ou si vous avez les soluitons)...
D'avance merci.
Cordialement
Gérard
Hors ligne
#2 Tue 09 June 2009 10:58
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Jeux récréatifs tirés d'Hello GeoWorld
Très sympa...si ona un peu de temps !
J'ai juste fait le premier
- un petit buffer autour de chaque Dept -> table Buff_Depts
- une requête
Code:
Select BuffDepts.Num_dept, Count(*) from BuffDepts, DEPTS where BuffDepts.obj Intersects DEPTS.obj group by BuffDepts.Num_dept into Sel1
qui donne une table Sel1 non graphique où Count est le nombre de DEPTS limitrophe + 1
- une autre requête
Code:
Select * from DEPTS, Sel1 where DEPTS.Num_dept= Sel1.Num_dept And Sel1.COL2=5 into Sel2
donne la table Sel2, sélection des 14 départements conformes à la demande
Hors ligne
#3 Tue 09 June 2009 12:05
- domingo
- Participant occasionnel
- Date d'inscription: 30 May 2008
- Messages: 11
Re: Jeux récréatifs tirés d'Hello GeoWorld
hum...
Pour le premier toujours
Il me semble que ce n'est pas la peine de créer un buffer autour des départements.
Une simple intersection avec une copie de la table des départements devrait suffire non?
Hors ligne
#4 Tue 09 June 2009 13:33
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Jeux récréatifs tirés d'Hello GeoWorld
Très juste...une seule requête donc (avant la requête donnant Sel2)
Code:
Select Num_dept, Count(*) "tot_plus_un" from DEPTS where obj Intersects any (Select obj From copie_DEPTS) group by Num_dept order by tot_plus_un into Sel1
Hors ligne
#5 Tue 09 June 2009 17:38
- guillaume
- Participant actif
- Date d'inscription: 5 Sep 2005
- Messages: 66
Re: Jeux récréatifs tirés d'Hello GeoWorld
Re-bonjour,
bravo pour la rapidité et la sagacité des réponses.
Gérard
Hors ligne
#6 Tue 09 June 2009 21:56
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Jeux récréatifs tirés d'Hello GeoWorld
Problème 2 (un peu long mais, bon...)
Code:
Select DEPTS.Num_dept, copie_DEPTS.Num2_dept from DEPTS, copie_DEPTS where DEPTS.obj Intersects copie_DEPTS.obj And DEPTS.Num<>copie_DEPTS.Num2_dept order by Num_dept, Num2_dept into Sel1
puis
Code:
Select Num, Min(Num2) from Sel1 group by Num into Sel2
enfin
Code:
Select * from Sel2 where val(Num)<COL2 into resultat
MapInfo met du temps pour la première requête...et la table "resultat" est bien sûr non graphique
ps: pour ce soir je n'ai ni population, ni MNT, ni hydro...donc au lit, on verra plus tard
Hors ligne
#7 Tue 09 June 2009 22:05
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Jeux récréatifs tirés d'Hello GeoWorld
Bonjour
Vous venez de pîquer Maurice... Il va toute les trouver
Daniel
De retour à la géomatique
Hors ligne
#8 Wed 10 June 2009 09:52
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Jeux récréatifs tirés d'Hello GeoWorld
J'adooooore les jeux ! ...mais il faut que je m'en garde un peu pour la retraite (et qu'en attendant...je bosse !)
Ce qui serait aussi informatif, en plus d'être récréatif, c'est d'optimiser une solution pour différents softs et de voir quel temps met chacun à faire le job (sur la même machine et les mêmes données, oeuf corse...).
Hors ligne
#9 Wed 10 June 2009 21:10
- guillaume
- Participant actif
- Date d'inscription: 5 Sep 2005
- Messages: 66
Re: Jeux récréatifs tirés d'Hello GeoWorld
Bonjour à tous,
je reviens sur la dernière solution apportée par Maurice, j'ai une variante un peu plus rapide mais tirée par les cheveux :
Select DEPTS.Num_dept, copie_DEPTS.Num2_dept from DEPTS, copie_DEPTS where DEPTS.obj Intersects copie_DEPTS.obj And DEPTS.Num >copie_DEPTS.Num2_dept order by Num_dept, Num2_dept into Sel1
Une fois dans la fenêtre Carte avec les départements, un clic sur le bouton Inverser Sélection, donne la réponse attendue avec sélection des bons départements ! ?
Je profite de ce message pour rectifier une faute de ma part (ce qui m'a valu des remontrances légitimes): j'ai omis d'accompagner l'image en PJ (extrait de la lettre d'information de Geoconcept "Hello Geoworld"), de la mention "avec l'aimable autorisation de son auteur : Stéphane RASSE de Geoconcept". Mea culpa.
Cordialement
Gérard
Hors ligne
#10 Thu 11 June 2009 00:12
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Jeux récréatifs tirés d'Hello GeoWorld
Bonsoir
Mention rajoutée au premier post, qui "légitime" la citation de HelloGeoworld...
Pour la question 2: reste le cas Corse (!)
Si Num_dept est, comme souvent, en caractères, 2A est vu par MI comme > 29 !
Heureusement c'est une ile
Hors ligne
#11 Thu 11 June 2009 01:38
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Jeux récréatifs tirés d'Hello GeoWorld
oeuf corse...).
T'ais-je déjà dit que je trouve ton anglais heu! disons... bien
Daniel
De retour à la géomatique
Hors ligne