2016-05-13 2 views
0
{ 
    "entities" : { 
      "hashtags" : [ 
        { 
          "text" : "NightToInspire", 
          "indices" : [ 
            38, 
            53 
          ] 
        } 
      ], 
      "symbols" : [ ], 
      "user_mentions" : [ 
        { 
          "screen_name" : "AFC_Foundation", 
          "name" : "TheArsenalFoundation", 
          "id" : 570099076, 
          "id_str" : "570099076", 
          "indices" : [ 
            20, 
            35 
          ] 
        }, 
        { 
          "screen_name" : "Arsenal", 
          "name" : "Arsenal FC", 
          "id" : 34613288, 
          "id_str" : "34613288", 
          "indices" : [ 
            57, 
            65 
          ] 
        } 
      ] 

     } 

Как бы идти о запросе этого вложенного массива JSON (подмножество того, что было на самом деле вернулся) из API твиттера, чтобы получить оба screen_name-х, которые появляются в массиве. Использование db.collection.find («что-то») форматMongoDB с API твиттера

+0

Почему вы хотите использовать формат db.collection.find («что-то»), если данные отсутствуют в вашей базе данных и поступают из api twitter? –

+0

@SerhanOztekin Я уже сохранил этот JSON в базе данных. –

ответ

1

Нечто подобное может помочь,

var entities = db.Entities.find(); 

entities.user_mentions.each(function(err, item) { 
      console.log(item.screen_name) // do whatever 
} 

}); 
0

Не уверен, если вы абсолютно необходимо использовать находку(), но агрегат будет работать:

db.Entities.aggregate([{$unwind : '$entities.user_mentions'},{$project : {'screen_name':'$entities.user_mentions.screen_name'}}])