2014-04-01 20 views
7

bir toplama yerleşimi var, her kaydın alanları vardır: placement_id, program_id, kategori, ... Program_id = 3 veya 5 olan tüm yerleşimleri bulmam gerek placement_id listesinin bir listesini döndür.mongodb, yalnızca sorguyu bulmak için

db.placements.find({program_id:{$in: [3, 5]}}, {placement_id:1, _id:0}) 

i kayıtları var:

{ "placement_id" : 196 } 
{ "placement_id" : 197 } 
{ "placement_id" : 198 } 
... 

sadece dönmek için herhangi bir yol yoktur: ben bu komutu çalıştı

find() imleç gidiyor

[196, 197, 198...] 
+0

{196, 197, 198 ...} geçerli JSON değil. –

cevap

13

Ne olursa olsun JSON belgeleri verir. Ancak istediğiniz değerleri elde edebilirsiniz. bu belki gibi bir şey:

get_placement_id = function(doc) { return doc.placement_id; } 

db.placements.find({program_id:{$in: [3, 5]}}, {placement_id:1, _id:0}).map(get_placement_id) 

==>

[ 196, 197, 198, ... ] 
+0

Eğer haritayı() burada uygulamak için herhangi bir java fonksiyonu var mı? – user468587

İlgili konular