2017-04-21 7 views
0

J'ai beaucoup de chansons contenues dans une collection, chacune contenant _id et description, dans la description est un tableau d'éléments, y compris la ligne et sub_fingerprint, je passe _id et line. Comment récupérer subfingerprint? Merci J'ai une commande mongo appeléComment obtenir la valeur de l'élément dans le tableau mongodb

db.getCollection ('song_fingerprint'). Find ({_id: 1}, 
                  {Fingerprint: {$ elemMatch: {line: 102}}}) 

Mais en Java, il est très difficile ...

{ 
    "_id" : 13, 
    "fingerprint" : [ 
     { 
      "line" : 1, 
      "sub_finger" : "74076e76" 
     }, 
     { 
      "line" : 2, 
      "sub_finger" : "74076ef6" 
     }, 
     { 
      "line" : 3, 
      "sub_finger" : "74076ef6" 
     }, 
     { 
      "line" : 4, 
      "sub_finger" : "74056ef6" 
     }, 
     { 
      "line" : 5, 
      "sub_finger" : "76856ed6" 
     }, 
     { 
      "line" : 6, 
      "sub_finger" : "76e52ed6" 
     }, 
     { 
      "line" : 7, 
      "sub_finger" : "76e58cd6" 
     }] 
} 
+0

Je pense que c'est ce que vous voulez http://stackoverflow.com/q/3985214/7420795 – user7420795

Répondre

0

je l'ai testé dans mon locale son travail, il est de retour élément correspondant dans JSON

db.getCollection('song_fingerprint').find({"fingerprint.line" : 2},{_id: 13, fingerprint: {$elemMatch: {line: "2"}}})