«mongodb-query» etiketlenmiş sorular

Bu etiket, MongoDB koleksiyonlarını mongo kabuğu veya bir programlama dili sürücüsü kullanarak sorgulama ve güncellemeyle ilgili sorular içindir.


12
Dizi boyutunun 1'den büyük olduğu belgeler için sorgu
Aşağıdaki biçimde belgeler içeren bir MongoDB koleksiyonum var: { "_id" : ObjectId("4e8ae86d08101908e1000001"), "name" : ["Name"], "zipcode" : ["2223"] } { "_id" : ObjectId("4e8ae86d08101908e1000002"), "name" : ["Another ", "Name"], "zipcode" : ["2224"] } Şu anda belirli bir dizi boyutu ile eşleşen belgeler alabilirsiniz: db.accommodations.find({ name : { $size : 2 }}) …

14
İki tarih arasındaki nesneleri bulma MongoDB
Ben mongodb içinde tweets saklamak etrafında oynuyordum, her nesne şöyle görünür: { "_id" : ObjectId("4c02c58de500fe1be1000005"), "contributors" : null, "text" : "Hello world", "user" : { "following" : null, "followers_count" : 5, "utc_offset" : null, "location" : "", "profile_text_color" : "000000", "friends_count" : 11, "profile_link_color" : "0000ff", "verified" : false, "protected" …

14
MongoDB koleksiyonundaki bir nesne dizisindeki yalnızca sorgulanan öğeyi alma
Koleksiyonumda aşağıdaki belgelerin bulunduğunu varsayalım: { "_id":ObjectId("562e7c594c12942f08fe4192"), "shapes":[ { "shape":"square", "color":"blue" }, { "shape":"circle", "color":"red" } ] }, { "_id":ObjectId("562e7c594c12942f08fe4193"), "shapes":[ { "shape":"square", "color":"black" }, { "shape":"circle", "color":"green" } ] } Sorgu yap: db.test.find({"shapes.color": "red"}, {"shapes.color": 1}) Veya db.test.find({shapes: {"$elemMatch": {color: "red"}}}, {"shapes.color": 1}) Eşleşen belgeyi (Belge 1) , ancak …


26
MongoDB'den rastgele kayıt
Çok büyük bir kayıttan (100 milyon kayıt) rastgele bir kayıt almak istiyorum mongodb. Bunu yapmanın en hızlı ve etkili yolu nedir? Veriler zaten orada ve rastgele bir sayı üretip rastgele bir satır elde edebileceğim bir alan yok. Herhangi bir öneri?




3
İç içe nesneler nasıl sorgulanır?
İç içe nesneler gösterimi ile mongoDB sorgularken bir sorun var: db.messages.find( { headers : { From: "reservations@marriott.com" } } ).count() 0 db.messages.find( { 'headers.From': "reservations@marriott.com" } ).count() 5 Ne yaptığımı göremiyorum. Nokta gösterim sorgusu ile aynı sonucu döndürmek için iç içe nesne gösterimi bekliyorum. Nerede yanılıyorum?

15
Mongodb'da Birden Çok Dizi Öğesini Güncelleme
Öğeleri bir dizi tutan bir Mongo belgesi var. = XX .handleddizideki tüm nesnelerin özniteliğini sıfırlamak istiyorum .profile. Belge şu biçimde: { "_id": ObjectId("4d2d8deff4e6c1d71fc29a07"), "user_id": "714638ba-2e08-2168-2b99-00002f3d43c0", "events": [{ "handled": 1, "profile": 10, "data": "....." } { "handled": 1, "profile": 10, "data": "....." } { "handled": 1, "profile": 20, "data": "....." } …

8
mongodb: yoksa ekle
Her gün bir belge stoğu (güncelleme) alıyorum. Ne yapmak istiyorum zaten mevcut olmayan her öğeyi eklemek. Ayrıca ilk taktığımda ve en son ne zaman bir güncellemede gördüğümü takip etmek istiyorum. Yinelenen belgelere sahip olmak istemiyorum. Daha önce kaydedilmiş, ancak güncellememde olmayan bir belgeyi kaldırmak istemiyorum. Kayıtların% 95'i (tahmini) günden güne …


6
MongoDB: Alanın boş olduğu veya ayarlanmadığı kayıtlar nasıl sorgulanır?
Bir var Emailbir olan belgeyi sent_attarih alanı: { 'sent_at': Date( 1336776254000 ) } Bu Emailgönderilmemişse, sent_atalan ya boştur ya da yoktur. Gönderilen / gönderilmeyenlerin sayısını almam gerekiyor Emails. Bu bilgileri sorgulamanın doğru yolunu bulmaya çalışırken takılıp kaldım. Sanırım gönderilen sayıyı almanın doğru yolu: db.emails.count({sent_at: {$ne: null}}) Ama gönderilmeyenlerin sayısını nasıl …

8
Mongodb koleksiyonundan en son rekoru alın
Bir koleksiyondaki en son kaydı bilmek istiyorum. Bu nasıl yapılır? Not: Aşağıdaki komut satırı sorgularının çalıştığını biliyorum: 1. db.test.find().sort({"idate":-1}).limit(1).forEach(printjson); 2. db.test.find().skip(db.test.count()-1).forEach(printjson) idate zaman damgasını ekledi. Sorun, daha uzun toplama, verileri geri alma zamanı ve benim 'test' koleksiyonum gerçekten çok büyük. Sabit zamanlı yanıt veren bir sorguya ihtiyacım var. Daha iyi …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.