2014-11-09 2 views
0

Попытка запросить mongo для возврата документов, содержащих значение в массиве, которое больше определенного значения. Вот моя путаница ...Mongodb Query больше значения в массиве

> db.homes.findOne({},{'listing.location.latitude': 1}) 
{ 
    "_id" : ObjectId("545fd08f37e6134b5796a085"), 
    "listing" : { 
     "location" : [ 
      { 
       "latitude" : [ 
        "38.68431" 
       ] 
      } 
     ] 
    } 
} 

Имеет смысл, просто возвращает поле, которое я хочу. Однако, когда я запрашиваю на этом поле, он не:

> db.homes.findOne({'listing.location.latitude': {$gt: 0}}) 
null 

Я считаю, что он должен делать с массивами в структуре, но я не знаю, как запросить его по-разному в пределах массива. Что я делаю не так? Целью будет передача этого запроса в мангуст.

ответ

0

Если это ваши фактические данные, вы сохраняете широту как String "38.68431". Вам нужно сохранить его как float, чтобы правильно выполнить запрос.

+0

Да, я, к сожалению, понял эти минуты после того, как я разместил это. Некоторое время стучал головой, и мне просто потребовалось, чтобы я опубликовал его, чтобы понять ... Спасибо – user1200387

Смежные вопросы