Récuperer la partie DATE d'un champ DATETIME dans un SELECT

ypothier Messages postés 80 Date d'inscription vendredi 4 janvier 2002 Statut Membre Dernière intervention 22 janvier 2007 - 8 oct. 2002 à 20:53
 galaws1 - 27 août 2013 à 16:44
Bonjour
J'espère qu'un d'entre vous peut m'aider. Je fais un select de ma BD(SQL SERVER) et à l'intérieur j'ai un champ DATETIME. Mais quand j'arrive pour comparer mon champ DATETIME avec une date, il trouve rien car il a le TIME aussi à comparer. Alors je me demandais si quelqu'un saurait comment faire pour extraire la partie DATE de mon champ DATETIME dans mon select ???

EX:
select * from projet where prj_dt = '2002/01/01'

Merci
ypothier

2 réponses

jaouadlaaribi Messages postés 2 Date d'inscription lundi 4 décembre 2006 Statut Membre Dernière intervention 15 octobre 2008
15 oct. 2008 à 13:06
En attendant l'utilisation massive du champ Date (juste la date) de SQL Server 2008, il faut ruser pour récupérer une date sans les heures/minutes depuis un champ DateTime.


2 méthodes s'offrent à nous :


<ol>
<li>
Cast(DATEDIFF(day, 0, monchampDateTime) As DateTime)

</li>
<li>Convert(varchar(20), monchampDateTime, 102) </li>
</ol>
Le premier est plus performant que le second. Le second renvoie un type string.

c'est pas moi ki a trouvé la solution mais j'ai fait une recherche et ca marche tres bien .
0
cast(r.datecomptableReleve AS date) ya aussi cette possibilité
0
ici datecomptablereleve est ton champ de type datetime
0
Rejoignez-nous