Comparaison de dates

cs_Benz Messages postés 196 Date d'inscription jeudi 3 janvier 2002 Statut Membre Dernière intervention 7 juin 2007 - 1 juil. 2003 à 11:11
cs_Seren Messages postés 78 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 24 novembre 2004 - 1 juil. 2003 à 14:22
Bonjour,

J'ai besoin de comparer des dates, mais je dois avouer que j'ai du mal. Je voudrais, savoir quelles sont les dates supérieures à la date du jour, celles qui sont égales et celles qui sont inférieurs, suivant la requete utilisée.

Mon problème est que celon la date du jour, les résultats sont variablement bon, ou mauvais.

Un exemple de requete que j'utilise :
REQUETE = "SELECT * FROM Taches WHERE Date_tache < #"&Date&"# AND Termine <> 1 ORDER BY Date_tache DESC"

Exemples de résultats si je compare
#15/02/2003# > #01/07/2003# (Résultat = vrai) ???
#03/01/2003# > #01/03/2003# (Résultat = vrai) ???

Par contre si je compare :
#15/02/2003# > #01/07/2004# (Résultat = vrai) OK
#15/02/2003# > #16/02/2003# (Résultat = faux) OK

Sans utiliser les dièses, c'est pas la joie non plus. Si quelqu'un sait comment je pourrais faire, ca m'aiderait pas mail. Merci d'avance.

Benz

3 réponses

cs_Seren Messages postés 78 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 24 novembre 2004 1
1 juil. 2003 à 14:11
Hello!
Utilise une fonction nommée DATEDIFF

sa syntaxe est DateDiff("Type", Date1, Date2)

dans type tu mets ce que tu veux comparer par exemple dans ce cas je pense sa sera les jours dont faud mettre "d" (pour DAY) voilà

re dis moi si sa joue pas!

SEREN :approve)
0
cs_Benz Messages postés 196 Date d'inscription jeudi 3 janvier 2002 Statut Membre Dernière intervention 7 juin 2007
1 juil. 2003 à 14:16
Terrible,

J'ai trouvé la solution au moment ou j'ai recu le mail pour m'avertir de ta réponse. Du coup, j'ai pas besoin d'utiliser un datediff (du moins si ca marche toujours demain)

En fait j'ai transformé ma requete ainsi :REQUETE "SELECT * FROM Taches WHERE Date_tache DateValue('"&Date&"') AND Termine <> 1 ORDER BY Date_tache DESC"

Au lieu de : 'REQUETE "SELECT * FROM Taches WHERE Date_tache #"&Date&"# AND Termine <> 1 ORDER BY Date_tache DESC"

Le Datevalue, avec les quotes qui vont bien ont permis de corriger l'erreur. J'imagine que la comparaison n'avais pas lieu sur la totalité de la date mais partie par partie.

Ca marche comme ca pour le moment. On verras ce que nous dira l'avenir.

En tout cas, je garde ton DateDiff sous la main qui me sera surement utile pour autre chose.

Merci à toi.

Benz
0
cs_Seren Messages postés 78 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 24 novembre 2004 1
1 juil. 2003 à 14:22
alors je te souhaite que sa marche demain encore ;)

a bientot pour de nouvelles aventures!!

SEREN :approve)
0
Rejoignez-nous