#1 Tue 29 April 2008 15:43
- AurelieA
- Juste Inscrit !
- Date d'inscription: 29 Apr 2008
- Messages: 2
Utiliser des opérateurs temporels sur MapInfo
Bonjour Mapinfistes,
1/ Les opérateurs spatiaux proposés par MapInfo (>, <, >=,
sont ils transposables pour réaliser des requêtes temporelles? exemple. dans une tables donnée et une colonne "date" choisie : la formule "Date > 01/01/1859" sélectionnerait tous les objets qui ont une date suppérieure à 01/01/1859. Sauf que ça ne fonctionne pas.
2/ Les focntions sont peut être la solutions? exemple. dans les mêmes conditons :la formule "date > years(1859)" sélectionnerait tous les objets qui ont une date suppérieure à 1859. Sauf que ça ne fonctionne pas on plus.
Quelqu'un pourait-il m'éclairer sur ce point afin de réaliser les types de requêtes suivantes : exemples.
"Sélection des batiments créés avant 1960" idem pour "après 1950"
"Sélection des batiments créés en 1960"
""Sélection des batiments créés entre 1960 et 1980"
Hors ligne
#2 Tue 29 April 2008 16:18
- Nicolas Szlapka
- Participant actif
- Lieu: NPDC
- Date d'inscription: 20 Dec 2006
- Messages: 107
Re: Utiliser des opérateurs temporels sur MapInfo
Bonjour !
Apparemment, ça fonctionne...
Je viens de tester un petit truc, j'ai créé une table sous Excel avec 4 colonnes, dont une appelée "Date" et où le format de cellule est bien en "date" et du type "14/03/01".
Je l'ai ouverte sous MapInfo (d'abord enregistrée sous un autre nom puis rouverte, au cas où)
J'ai effectué une requête SQL avec un critère tel que : Date > "01/01/2006"
La requête m'a bien sorti les éléments postérieurs à cette date.
La fonction était sans doute mal écrite... ![]()
Quoi que...
Réessayez pour voir avec les guillemets autour de la date.
Ou alors ça dépend du format de date.
Dernière modification par Nicolas Szlapka (Tue 29 April 2008 16:23)
Nicolas
Hors ligne
#3 Thu 01 May 2008 19:18
- AurelieA
- Juste Inscrit !
- Date d'inscription: 29 Apr 2008
- Messages: 2
Re: Utiliser des opérateurs temporels sur MapInfo
Pour les opérateurs (>, <, etc.) ça fonctionne avec les guillemets. Merci pour ce déblocage!
Cependant, la quetion 2 reste sans réponses :
- Les fonctions (years, week, etc.) correspondent à quelles requêtes exactement?
- Ces fonctions s'utilisent avec quelle syntaxe?
Si quelqu'un sait...Merci d'avance
Hors ligne
#4 Thu 01 May 2008 20:40
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Utiliser des opérateurs temporels sur MapInfo
Bonjour
Il y a le problème des réglages nationaux (date "à la française" ou pas), sinon les fonctions Day( ), Month( ), Weekday( ), Year( ) donnent le n° du jour (1 à 31), le mois (1 à 12), le n° du jour (1 à 7) et l'année d'une expression de date (qu'on peut tester avec CurDate() )
A vous d'essayer en tapant ces différentes expressions dans la fenêtre MapBasic: print Day(CurDate())...etc...
Hors ligne
#5 Fri 04 September 2009 15:21
- gussoner
- Participant actif
- Date d'inscription: 29 Jan 2006
- Messages: 128
Re: Utiliser des opérateurs temporels sur MapInfo
Bonjour,
j'ai moi aussi eu à faire des recherches temporelles avec MI. Du coup j'ai développé un tout petit mbx qui permet d'éviter de passer par une requête SQL. Si ca peut servir à d'autres..
Hors ligne


