Operator Pembanding MongoDB

 

"Operator Pembanding MongoDB"

MongoDB, sebagai sistem basis data NoSQL, menyediakan berbagai operator pembanding yang dapat digunakan dalam permintaan (query) untuk membandingkan nilai dalam dokumen-dokumen yang disimpan. Berikut adalah beberapa jenis operator pembanding yang umum digunakan dalam MongoDB:

1. $eq : Sama dengan. 2. $ne : Tidak sama dengan. 3. $gt : Lebih besar dari. 4. $gte : Lebih besar dari atau sama dengan. 5. $lt : Lebih kecil dari. 6. $lte : Lebih kecil dari atau sama dengan.

Contoh penggunaan:


Atau bisa gunakan dibawah ini:

db.products.insertMany([

    { "_id" : 1, "name" : "xPhone", "price" : 799, "releaseDate": ISODate("2011-05-14"), "spec" : { "ram" : 4, "screen" : 6.5, "cpu" : 2.66 },"color":["white","black"],"storage":[64,128,256]},

    { "_id" : 2, "name" : "xTablet", "price" : 899, "releaseDate": ISODate("2011-09-01") , "spec" : { "ram" : 16, "screen" : 9.5, "cpu" : 3.66 },"color":["white","black","purple"],"storage":[128,256,512]},

    { "_id" : 3, "name" : "SmartTablet", "price" : 899, "releaseDate": ISODate("2015-01-14"), "spec" : { "ram" : 12, "screen" : 9.7, "cpu" : 3.66 },"color":["blue"],"storage":[16,64,128]},

    { "_id" : 4, "name" : "SmartPad", "price" : 699, "releaseDate": ISODate("2020-05-14"),"spec" : { "ram" : 8, "screen" : 9.7, "cpu" : 1.66 },"color":["white","orange","gold","gray"],"storage":[128,256,1024]},

    { "_id" : 5, "name" : "SmartPhone", "price" : 599,"releaseDate": ISODate("2022-09-14"), "spec" : { "ram" : 4, "screen" : 9.7, "cpu" : 1.66 },"color":["white","orange","gold","gray"],"storage":[128,256]}

 ])


Operator $eq (Specified Value):

Operator $eq (Embedded Document):


Operator $eq (Array Element):


Operator $eq (Date):

 Operator $gt:


Kuis
• Konvert 4 perintah $eq diatas ke query MySQL

Tampilan dengan perintah $eq
db.products.find({
    price: {
        $eq: 899
    }
}, {
    name: 1,
    price: 1
})

db.products.find({
    "spec.ram": {
        $eq: 4
    }
}, {
    name: 1,
    "spec.ram": 1
})

db.products.find({
    color: {
        $eq: "black"
    }
}, {
    name: 1,
    color: 1
})

db.products.find({
    releaseDate: {
        $eq: new ISODate("2020-05-14")
    }
}, {
    name: 1,
    releaseDate: 1
})

Tampilan dengan querry MySQL

SELECT name, price FROM products WHERE price = 899;

SELECT name, `spec.ram` FROM products WHERE `spec.ram` = 4;

SELECT name, color FROM products WHERE color = 'black';

SELECT name, releaseDate FROM products WHERE releaseDate = '2020-05-14';


 Tampilkan products collection (name & price) yang price lebih
besar sama dengan ($gte) 799

db.products.find({
    price: { $gte: 799 }
}, {
    name: 1,
    price: 1
})




• Tampilkan products collection (name & storage) yang storage 
lebih besar sama dengan ($gte) 512

db.products.find(
    { storage: { $gte: 512 } },
    { name: 1, storage: 1 }
)




 Tampilkan products collection (name & spec.screen) yang 
screen (in spec) lebih kecil ($le) dari 7

db.products.find(
    { "spec.screen": { $lt: 7 } },
    { name: 1, "spec.screen": 1 }
)



• Tampilkan products collection (name & releaseDate) yang 
releaseDate sebelum ($le) 2015-01-01

db.products.find(
    { releaseDate: { $lt: ISODate("2015-01-01T00:00:00Z") } },
    { name: 1, releaseDate: 1 }
)


Komentar

Postingan populer dari blog ini

UTS

UTS BIG DATA 8801202103