Requete SQL avec Sélection sur un champs DateTime dans SQLSERVER 2008 [Résolu]

Signaler
Messages postés
36
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
29 mars 2013
-
Messages postés
36
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
29 mars 2013
-
Bonjour,

Je voudrais faire une selection sur un champs de type DATETIME.
je souhaite donc faire la requete suivante: select * from matable where date_table='mondatetime'
et je n'obtiens aucun résultat !
J'ai été sur les forums, j'ai lu un tas de soit-disant solutions avec les fonctions CAST,FLOOR,CONVERT et tout,
mais mon SGBD refuse malgré tout de m'afficher les résultats.

Merci pour votre aide

ViNoK

4 réponses

Messages postés
302
Date d'inscription
samedi 24 janvier 2004
Statut
Membre
Dernière intervention
4 février 2011

Le problème est qu'une donnée en DATETIME est précis au millième de seconde, donc si tu as une valeur
2009-03-09 10:00:00.001 dans date_table, cette ligne ne sera pas affichée.

Ta requète devrait plutot selectionner une plage de date style :

select * from matable where date_table between 'mondatetime' AND DATEADD(seconde;59,'mondatetime')

ainsi tu recherches tous les enregitrement où date_table est compris entre  2009-03-09 10:00:00.000 et 2009-03-09 10:00:59.000
Messages postés
302
Date d'inscription
samedi 24 janvier 2004
Statut
Membre
Dernière intervention
4 février 2011

Quelle est la valeur de 'mondatetime' ?
Messages postés
36
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
29 mars 2013

2009-03-09 10:00:00.000
Messages postés
36
Date d'inscription
jeudi 12 octobre 2006
Statut
Membre
Dernière intervention
29 mars 2013

Merci, c'est exactement ce qu'il me fallait