Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#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 (>, <, >=, smile 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... smile
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..


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

Pied de page des forums

Powered by FluxBB