banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

GEODATA DAYS 2024

#1 Wed 03 June 2009 16:24

qian
Participant occasionnel
Date d'inscription: 17 Feb 2009
Messages: 11

MI - Requete SQL spatiale

Bonjour,

J'ai besoin de vos aides.

J'ai deux tables, une des Points d'arrêt de bus, une autre les piscines.

Comment je peux filtrer les points d'arrêt de bus qui sont à moins de 300 mètres de chaque piscine?

Merci à l'avance!!

Qian

Hors ligne

 

#2 Wed 03 June 2009 16:42

Spacejo
Membre
Lieu: Nancy
Date d'inscription: 17 Aug 2008
Messages: 2511

Re: MI - Requete SQL spatiale

Salut qian et bienvenue,

Essaye voir ça:

Select * from piscines, Points d'arrêt de bus where Points d'arrêt de bus.obj within any (select buffer (piscines.obj , 12 , 300 , "m") from piscines) into Ma_Selection


En espérant que cela t'aide
A+
Joël

Hors ligne

 

#3 Wed 03 June 2009 17:20

qian
Participant occasionnel
Date d'inscription: 17 Feb 2009
Messages: 11

Re: MI - Requete SQL spatiale

merci joel

j'ai essayé, avec Sélection SQL

ces deux tables s'appellent PN_BUS et Sport

j'ai les bien choisi pour "Tables",

et pour "Critères" j'ai mis:
                             
            PN_BUS.obj Within any(buffer(Sport.obj, 12, 300, "m"))

il me dit "Aucune jointure n'est spécifiée entre les tables PN_BUS et Sport. Condition de jointure erronée dans la clause Critères (Where)."

je ne comprend pas

Hors ligne

 

#4 Wed 03 June 2009 17:41

Spacejo
Membre
Lieu: Nancy
Date d'inscription: 17 Aug 2008
Messages: 2511

Re: MI - Requete SQL spatiale

Place la requète directement dans la FMB (Fenêtre MapBasic)
Pour ouvrir cette fenêtre ---> Options----> Afficher fenêtre Mapbasic

Select * from Sport, PN_BUS where PN_BUS.obj within any (select buffer (Sport.obj , 12 , 300 , "m") from Sport) into Ma_Selection


A+
Joël

Hors ligne

 

#5 Thu 04 June 2009 17:16

Maestro de la salsa
Participant actif
Date d'inscription: 7 Jun 2006
Messages: 133

Re: MI - Requete SQL spatiale

Le problème peut-être est qu'on selectionne un buffer qui n'est pas créé...
Sinon fait un buffer de 300m autour des bus (table-->tampon) et ensuite la selection des piscines avec ce buffer

Hors ligne

 

#6 Fri 05 June 2009 16:46

hanczyk
Participant assidu
Lieu: Châlons-en-Champagne
Date d'inscription: 21 Apr 2006
Messages: 596

Re: MI - Requete SQL spatiale

Bonjour,

Dans la boîte SQL :

Tables : Sport

Critères : obj Within any (select buffer (obj, 100 , 5 ,"km") from PN_BUS)

ça devrait le faire

@+ jmh


Jean-Marc Hanczyk

Hors ligne

 

#7 Fri 05 June 2009 16:50

hanczyk
Participant assidu
Lieu: Châlons-en-Champagne
Date d'inscription: 21 Apr 2006
Messages: 596

Re: MI - Requete SQL spatiale

Bonjour,

petites corrections (je me suis trompé dans les distances et unités) :

Bonjour,

Dans la boîte SQL :

Tables : Sport

Critères : obj Within any (select buffer (obj, 100 , 300 ,"m") from PN_BUS)



PS : j'ai donné la valeur maximum pour le lissage 100 (segments par cercle)

ça devrait le faire

@+ jmh


Jean-Marc Hanczyk

Hors ligne

 

#8 Sun 07 June 2009 19:26

hanczyk
Participant assidu
Lieu: Châlons-en-Champagne
Date d'inscription: 21 Apr 2006
Messages: 596

Re: MI - Requete SQL spatiale

Bonjour,

re-correction

à la relecture de la question, vous voulez filtrer la ARRETS DE BUS,
alors il faut inverser la requête.

Pour la table, j'ai nommé un champ NOM : il faut renseigner chaque cellule par le nom de l'arrêt.
Ensuite j'ai groupé par ce champ.
Mon résultat bien sûr est une table NON graphique.

Fields {*}
Tables {PN_BUS}
Where {obj Within any (select buffer (obj, 100 , 300 ,"m") from Sport)}
Group {NOM}
Order {}
Into {Selection}
Browse

PS : existe-t-il une autre solution sans créer de table ? Je suis preneur

@+ jmh


Jean-Marc Hanczyk

Hors ligne

 

#9 Mon 08 June 2009 11:19

qian
Participant occasionnel
Date d'inscription: 17 Feb 2009
Messages: 11

Re: MI - Requete SQL spatiale

merci beaucoup,
je vais les essayer maintenant smile

Hors ligne

 

#10 Mon 08 June 2009 16:48

Spacejo
Membre
Lieu: Nancy
Date d'inscription: 17 Aug 2008
Messages: 2511

Re: MI - Requete SQL spatiale

Salut,

Je rectifie ma requête (à copier directement dans la FMB) Fenêtre MapBasic -----> pour ouvrir cette Fenêtre: Options ----> voir Fenêtre MapBasic

Code:

Select * from PN_BUS where obj within any (select buffer (obj , 12 , 300 , "m") from Sport) into Ma_Selection

A+
Joël

Hors ligne

 

Pied de page des forums

Powered by FluxBB