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