Pengantar Bab

Pada bab ini, kita akan memperkenalkan operator pencocokan array field dalam dokumen JSON MongoDB.

Operator Kueri Array yang Didukung oleh MongoDB

Operator Deskripsi
$all Mencocokkan seluruh nilai array dalam kondisi kueri
$elemMatch Untuk bidang array, jika ada nilai yang cocok dengan semua kondisi yang ditetapkan oleh $elemMatch, maka kondisinya terpenuhi
$size Mencocokkan ukuran array

$all

{ tags: { $all: [ "ssl" , "security" ] } }

Setara dengan

{ $and: [ { tags: "ssl" }, { tags: "security" } ] }

Bidang tags adalah nilai array, dan array tags secara simultan berisi nilai ssl dan security.

$elemMatch

Data Uji

Data koleksi scores adalah sebagai berikut:

{ _id: 1, results: [ 82, 85, 88 ] }
{ _id: 2, results: [ 75, 88, 89 ] }

Contoh:

db.scores.find(
   { results: { $elemMatch: { $gte: 80, $lt: 85 } } }
)

Data yang Dikembalikan:

{ "_id" : 1, "results" : [ 82, 85, 88 ] }

Penjelasan:

  • Jika ada nilai dalam array results yang lebih besar dari atau sama dengan 80 dan kurang dari 85, dokumen tersebut cocok.

$size

Mencocokkan ukuran array

db.collection.find( { field: { $size: 2 } } );

Penjelasan:

  • Bidang field adalah nilai array, dan jika ukuran array sama dengan 2, dokumen tersebut cocok.