2011-03-09 3 views
1

J'ai un problème avec la requête:MongoDB DataTime requête a échoué

queryInactive: { "lastActivityTime" : { "$lt" : { "$date" : "2011-03-09T04:19:03Z"}}} 

Il est imprimé par morphia toString()

Il y a beaucoup de documents dont la dernière fois que l'activité est inférieure à ce datetime, mais personne n'a été trouvé par cette requête.

Quel est le problème? Je vous remercie.

+0

Pouvez-vous partager des données d'échantillon? – DhruvPathak

Répondre

0

Il est difficile de deviner à partir des informations que vous avez incluses, mais je suppose que vos types de données sont incohérents. Pouvez-vous vérifier que les dates stockées dans mongodb ne sont pas des chaînes.

Si toutes les informations ont été créées par morphia (et le pilote Java) alors vous ne devriez pas avoir ce problème, mais d'autres pilotes/langues ne sont pas si prudent.

Je suggère également de poster sur la liste de la morphine pour obtenir de l'aide. S'il vous plaît inclure votre exemple de code pour la requête, la façon dont les données sont enregistrées, et les données de l'échantillon de la coquille. http://groups.google.com/group/morphia

0
 
{ "lastActivityTime" : { "$lt" : { "$date" : new Date(2011,2,9,4,19,3)}}} 

Le type n'est pas chaîne

Vous pouvez voir le type de date de Javascript

.

Dans la morphine

.filter("createdate >=", date)//The date type is not String.It's date type. 
Questions connexes