19
: Ben üzerinden gitmek için basit JavaScript döngü ekledikBir MongoDB GROUP BY içinde HAVING yapmak için doğru yolu nedir? (Çiftleri bulmak için) SQL bu sorgu ne olacağını İçin
res = db.col.group({key:{userId:true,name:true},
reduce: function(obj,prev) {prev.count++;},
initial: {count:0}})
:
SELECT userId, name FROM col GROUP BY userId, name HAVING COUNT(*)>1
Ben MongoDB bu basit sorgu gerçekleştirilen sonuç ayarlanır ve tüm bir sayım var> 1 ile alanları, şöyle bulmak için bir filtre uygulandı:
for (i in res) {if (res[i].count>1) printjson(res[i])};
javascript kodu ı kullanmaktan daha bu diğer yapmak için daha iyi bir yolu var mı müşteri mi? Bu en iyi/en basit yolu ise , bu olduğunu söylemek ve bu soru yardımcı olacak birileri :)
benzer soruyu kontrol edin http://stackoverflow.com/questions/4224773/fast-way-to-find-duplicates-on-indexed-column-in-mongodb – RameshVel
Benzer, ama aynı değil. MongoDB'nin harita azaltma işlevini değil, bir grup işlevi kullanıyorum. – shlomoid
Ama bu cevaptan bağlanan bu site basit bir örnekle yardımcı oluyor: http://csanz.posterous.com/look-for-duplicates-using-mongodb-mapreduce – shlomoid