Mongodb: sorgularda büyüktür ve küçüktür nasıl kullanılır?


Yukarı veya aşağı sorgulama yapmak için MongoDB’de aşağıdaki operatörleri kullanabilirsiniz:

  • $lt : Daha az
  • $lte : Küçük veya eşit
  • $gt : Büyüktür
  • $gte : Büyük veya eşittir

Aşağıdaki yöntemler bu operatörleri kullanmanın yaygın yollarını göstermektedir:

Yöntem 1: Sorgudan büyük

 db.myCollection.find({field1: { $gt : 25 }})

Yöntem 2: Sorgudan küçük

 db.myCollection.find({field1: { $lt : 25 }})

Yöntem 3: Büyük ve küçüktür sorgusu

 db.myCollection.find({field1: { $gt : 25 , $lt : 32 }})

Yöntem 4: Daha büyük veya daha küçük sorgulama

 db.myCollection.find({ " $or ": [ {" field1 ": { $gt : 30 }}, {" field1 ": { $lt : 20 }} ] })

Aşağıdaki örnekler, aşağıdaki belgelere sahip bir toplama ekibiyle her yöntemin pratikte nasıl kullanılacağını gösterir:

 db.teams.insertOne({team: " Mavs ", points: 31})
db.teams.insertOne({team: " Spurs ", points: 22})
db.teams.insertOne({team: " Rockets ", points: 19})
db.teams.insertOne({team: " Warriors ", points: 26})
db.teams.insertOne({team: " Cavs ", points: 33})

Örnek 1: sorgu büyüktür

Aşağıdaki kod, “puan” alanındaki değeri 25’ten büyük olan tüm belgelerin nasıl sorgulanacağını gösterir:

 db.teams.find({points: { $gt : 25 }})

Bu sorgu aşağıdaki belgeleri döndürür:

 { _id: ObjectId("6203e4a91e95a9885e1e764f"),
  team: 'Mavs',
  points: 31 }
{ _id: ObjectId("6203e4a91e95a9885e1e7652"),
  team: 'Warriors',
  points: 26 }
{ _id: ObjectId("6203e4a91e95a9885e1e7653"),
  team: 'Cavs',
  points: 33 }

Üç çıktı belgesinin her birinin “puan” alanında 25’ten büyük bir değere sahip olduğunu unutmayın.

Örnek 2: Şundan az sorgusu:

Aşağıdaki kod, “puan” alanındaki değeri 25’ten küçük olan tüm belgelerin nasıl sorgulanacağını gösterir:

 db.teams.find({points: { $lt : 25 }})

Bu sorgu aşağıdaki belgeleri döndürür:

 { _id: ObjectId("6203e4a91e95a9885e1e7650"),
  team: 'Spurs',
  points: 22 }
{ _id: ObjectId("6203e4a91e95a9885e1e7651"),
  team: 'Rockets',
  points: 19 }

Her iki çıktı belgesinin de “puan” alanında 25’ten küçük bir değere sahip olduğunu unutmayın.

Örnek 3: Büyük ve küçük

Aşağıdaki kod, “puan” alanındaki değeri 25’ten büyük ve 32’den küçük olan tüm belgelerin nasıl sorgulanacağını gösterir:

 db.teams.find({points: { $gt : 25 , $lt : 32 }})

Bu sorgu aşağıdaki belgeleri döndürür:

 { _id: ObjectId("6203e4a91e95a9885e1e764f"),
  team: 'Mavs',
  points: 31 }
{ _id: ObjectId("6203e4a91e95a9885e1e7652"),
  team: 'Warriors',
  points: 26 }

Her iki çıktı belgesinin de “puan” alanında 25’ten büyük ve 32’den küçük bir değere sahip olduğunu unutmayın.

Örnek 4: Büyük veya Küçük

Aşağıdaki kod, “puan” alanındaki değeri 30’dan büyük veya 20’den küçük olan tüm belgelerin nasıl sorgulanacağını gösterir:

 db.teams.find({ " $or ": [ {" points ": { $gt : 30 }}, {" points ": { $lt : 20 }} ] })

Bu sorgu aşağıdaki belgeleri döndürür:

 { _id: ObjectId("6203e4a91e95a9885e1e764f"),
  team: 'Mavs',
  points: 31 }
{ _id: ObjectId("6203e4a91e95a9885e1e7651"),
  team: 'Rockets',
  points: 19 }
{ _id: ObjectId("6203e4a91e95a9885e1e7653"),
  team: 'Cavs',
  points: 33 }

Çıktı belgelerinin her birinin “puan” alanında 30’dan büyük veya 20’den küçük bir değere sahip olduğunu unutmayın.

Ek kaynaklar

Aşağıdaki eğitimlerde MongoDB’de diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:

MongoDB: Bir tarih aralığıyla sorgulama nasıl yapılır
MongoDB: “NO IN” sorgusu nasıl kullanılır?
MongoDB: Belirli bir alanda “boş değil” nasıl aranır

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir