Bölüm Girişi
Bu bölümde, MongoDB'nin JSON belgelerindeki dizi alan eşleme operatörlerini tanıtacağız.
MongoDB Tarafından Desteklenen Dizi Sorgu Operatörleri
Operatör | Açıklama |
---|---|
$all | Sorgu koşulunda tüm dizi değerini eşleştirir |
$elemMatch | Dizi alanları için, $elemMatch tarafından belirlenen tüm koşullara herhangi bir değer eşleşirse, koşul karşılanmış olur |
$size | Dizi boyutunu eşleştirir |
$all
{ tags: { $all: [ "ssl" , "security" ] } }
Şuna eşdeğerdir
{ $and: [ { tags: "ssl" }, { tags: "security" } ] }
tags
alanı bir dizi değeridir ve tags
dizisi aynı anda ssl
ve security
değerlerini içerir.
$elemMatch
Test Verisi
scores
koleksiyon verisi aşağıdaki gibidir:
{ _id: 1, results: [ 82, 85, 88 ] }
{ _id: 2, results: [ 75, 88, 89 ] }
Örnek:
db.scores.find(
{ results: { $elemMatch: { $gte: 80, $lt: 85 } } }
)
Dönen Veri:
{ "_id" : 1, "results" : [ 82, 85, 88 ] }
Açıklama:
-
results
dizisinde herhangi bir değer 80'den büyük eşit ise ve 85'ten küçükse, belge başarıyla eşleştirilir.
$size
Dizi boyutunu eşleştirir
db.collection.find( { field: { $size: 2 } } );
Açıklama:
-
field
alanı bir dizi değeridir ve dizi boyutu 2'ye eşitse, belge başarıyla eşleştirilir.