Je cours une simple requête DATEDIFF mais il ne semble pas calculer les jours correctement ou je fais quelque chose de mal.SQL DATEDIFF Ne fonctionne pas?
Si je lance
PRINT DATEDIFF(Day, 2010-01-20, 2010-01-01)
RETURN 19
Ce qui est correct. Si je change le mois de la première date à février (02), je reçois quelque chose d'étrange.
PRINT DATEDIFF(Day, 2010-02-20, 2010-01-01)
RETURN 20
Maintenant, ne devrait-il pas être 48 ou quelque chose?
Quelqu'un peut-il voir ce que je fais mal ou n'est-ce pas la bonne fonction à utiliser si je veux le No de jours entre ces dates?
J'ai essayé de prendre une date à partir de l'autre:
PRINT (2010-02-20) - (2010-01-01)
RETURN -20
Toute aide très appréciée.
Merci J.
@ James - Non, il ne devrait pas être 48 ... vous êtes censé mettre la date plus que le dernier paramètre. Sinon, le résultat est négatif. Ne pas oublier le '' non plus. Voir ma réponse ci-dessous. – JonH
Je ne voulais pas dire exactement 48 "ne devrait-il pas être 48 ou quelque chose" je viens de faire un calcul rapide dans ma tête. Merci pour l'aide cependant. – JBoom