giriiş
MongoDB'deki sorgu operatörleri arasında karşılaştırma, mantıksal, eleman, değerlendirme, coğrafi, dizi, bit tabanlı ve yorum operatörleri bulunur.
MongoDB karşılaştırma operatörleri
$eq
$eq operatörü bir eşitlik koşulunu belirtir. Bu operatör, bir alanın değeri belirtilen değere eşit olan belgeleri eşleştirir.
Sözdizimi:
{ : { $eq: } }Örnek:
db.books.find({ price: { $eq: 300 } })Bu örnekte, sorgu, Fiyat alanı değeri 300 olan tüm belgeleri seçmek için Kitaplar koleksiyonuna bakar.
$gt
$gt operatörü, alan değeri belirtilen değerden büyük olan belgeleri seçer.
Sözdizimi:
{ field: { $gt: value } }Örnek:
db.books.find({ price: { $gt: 200 } })$gte
$gte operatörü, alan değeri belirtilen değerden büyük veya ona eşit olan belgeleri seçer.
Sözdizimi:
{ field: { $gte: value } }Örnek:
db.books.find({ price: { $gte: 250 } })$in
$in operatörü, bir alanın değerinin belirtilen dizideki değerlerden herhangi birine eşit olduğu belgeleri seçer.
Sözdizimi:
{ field: { $in: [, , …] } }Örnek:
db.books.find({ price: { $in: [100, 200] } })$lt
$lt operatörü, alan değeri belirtilen değerden küçük olan belgeleri seçer.
Sözdizimi:
{ field: { $lt: value } }Örnek:
db.books.find({ price: { $lt: 20 } })$lte
$lte operatörü, alan değeri belirtilen değerden küçük veya ona eşit olan belgeleri seçer.
Sözdizimi:
{ field: { $lte: value } }Örnek:
db.books.find({ price: { $lte: 250 } })$ne
$ne operatörü, alan değeri belirtilen değere eşit olmayan belgeleri seçer.
Sözdizimi:
{ : { $ne: } }Örnek:
db.books.find({ price: { $ne: 500 } })$nin
$nin operatörü, alan değeri belirtilen dizide bulunmayan veya hiç bulunmayan belgeleri seçer.
Sözdizimi:
{ field: { $nin: [, , …] } }Örnek:
db.books.find({ price: { $nin: [50, 150, 200] } })MongoDB mantıksal operatörleri
$ ve
$and operatörü, bir dizi üzerinde mantıksal VE operatörü gibi davranır. Dizi, bir veya daha fazla ifade içermelidir ve dizideki tüm ifadeleri sağlayan belgeleri seçer.
Sözdizimi:
{ $and: [ { }, { }, ....] }Örnek:
db.books.find({ $and: [ { price: { $ne: 500 } }, { price: { $exists: true } } ] })$not
$not operatörü, belirtilen ifade üzerinde mantıksal bir DEĞİL operatörü gibi davranır ve ilgili ifadeyle eşleşmeyen belgeleri seçer.
Sözdizimi:
{ field: { $not: { } } }Örnek:
db.books.find({ price: { $not: { $gt: 200 } } })$nor
$nor operatörü, bir veya daha fazla sorgu teriminden oluşan bir dizi üzerinde mantıksal bir NOR operatörü gibi davranarak, dizideki sorgu terimlerinden hiçbirini karşılamayan belgeleri seçer.
Sözdizimi:
{ $nor: [ { }, { }, ..... ] }Örnek:
db.books.find({ $nor: [ { price: 200 }, { sale: true } ] })$or
<pعملگر $or به عنوان یک عملگر منطقی OR روی یک آرایه از دو یا چند عبارت عمل میکند و اسنادی را انتخاب میکند که حداقل یکی از عبارات را برآورده کنند.
Sözdizimi:
{ $or: [ { }, { }, ... , { } ] }Örnek:
db.books.find({ $or: [ { quantity: { $lt: 200 } }, { price: 500 } ] })MongoDB Temel Operatörleri
$exists
$exists operatörü, boolean değeri true olduğunda belirtilen alanı içeren belgeleri seçer. Değeri null olduğunda da alanı içeren belgeleri seçer.
Sözdizimi:
{ field: { $exists: } }Örnek:
db.books.find({ qty: { $exists: true, $nin: [5, 15] } })$type
$type operatörü, alan değeri BSON türü olarak belirtilen belgeleri seçer.
Sözdizimi:
{ field: { $type: } }Örnek:
db.books.find({ "bookid": { $type: 2 } })MongoDB değerlendirme operatörleri
$expr
$expr operatörü, sorgu dilinde toplama ifadelerinin kullanılmasına olanak tanır.
Sözdizimi:
{ $expr: { } }Örnek:
db.store.find({ $expr: { $gt: [ "$product", "price" ] } })$jsonSchema
Bu operatör, belirtilen JSON şemasına uyan belgeleri seçer.
Sözdizimi:
{ $jsonSchema: }$mod
$mod operatörü, alan değeri bölenle bölündüğünde belirtilen kalanı veren belgeleri seçer.
Sözdizimi:
{ field: { $mod: [ divisor, remainder ] } }Örnek:
db.books.find({ qty: { $mod: [ 200, 0 ] } })$regex
Bu operatör, sorgularda dize kalıplarını eşleştirmek için düzenli ifade yetenekleri sağlar. MongoDB, Perl ile uyumlu düzenli ifadeler kullanır.
Sözdizimi:
{ : /pattern/ }Örnek:
db.books.find({ price: { $regex: /789$/ } })$text
$text operatörü, metin diziniyle indekslenmiş bir alanın içeriğini arar.
Sözdizimi:
{ $text: { $search: , $language: , $caseSensitive: , $diacriticSensitive: } }Örnek:
db.books.find({ $text: { $search: "Othelo" } })$where
"Where" operatörü, bir JavaScript ifadesi veya eksiksiz bir JavaScript fonksiyonu içeren bir dizeyi sorgu motoruna iletmek için kullanılır.
Örnek:
db.books.find({ $where: function() { return (hex_md5(this.name) == "9b53e667f30cd329dca1ec9e6a8") } })









