Operator Logika MongoDB (Jenis Operator Logika, Contoh dan Perbandingan dengan perintah SQL)
MongoDB menggunakan operator logika dalam kueri untuk mencocokkan dokumen dalam koleksi.
Jenis Operator Logika
Berikut beberapa jenis operator logika dalam MongoDB, contohnya, dan perbandingan dengan perintah SQL:
1. $and
Operator ini digunakan untuk mencocokkan dokumen yang memenuhi semua kondisi yang diberikan. Contoh:2. $or
Operator ini digunakan untuk mencocokkan dokumen yang memenuhi salah satu dari beberapa kondisi yang diberikan. Contoh:3. $not
Operator ini digunakan untuk mencocokkan dokumen yang tidak memenuhi kondisi yang diberikan. Contoh:
4. $nor
Operator ini digunakan untuk mencocokkan dokumen yang tidak memenuhi semua kondisi yang diberikan. Contoh:
5. $exists
Operator ini digunakan untuk mencocokkan dokumen berdasarkan keberadaan atau ketiadaan suatu bidang. Contoh:
Kuis
-Buat tabel di MySQL dengan field dan data yang sama dengan
contoh diatas
1. Buat databasae baru di MySql :
2. Buat tabel produk dan warna produk dengan mengetik perintah
dibawah ini :
CREATE TABLE products (
id INT NOT NULL,
name VARCHAR(255) NOT NULL,
price DECIMAL(10, 2),
releaseDate DATE,
ram INT,
screen DECIMAL(4, 2),
cpu DECIMAL(4, 2),
storage INT
);
Setelah itu beri akses key pada struktur "id"
CREATE TABLE product_colors (
product_id INT,
color VARCHAR(255),
FOREIGN KEY (product_id) REFERENCES products(id)
);
3. Setelah tabel selesai dibuat, isi datanya sesuai perintah
dibawah :
INSERT INTO products (id, name, price, releaseDate, ram,
screen, cpu, storage)
VALUES
(1, 'xPhone', 799.00, '2011-05-14', 4, 6.5,
2.66, 64),
(2, 'xTablet', 899.00, '2011-09-01', 16, 9.5,
3.66, 128),
(3, 'SmartTablet', 899.00, '2015-01-14', 12,
9.7, 3.66, 16),
(4, 'SmartPad', 699.00, '2020-05-14', 8, 9.7,
1.66, 128),
(5, 'SmartPhone', 599.00, '2022-09-14', 4, 9.7,
1.66, 128),
(6, 'xWidget', NULL, NULL, 64, 9.7, 3.66, 1024),
(7, 'xReader', NULL, NULL, 64, 6.7, 3.66, 128);
INSERT INTO product_colors (product_id, color)
VALUES
(1, 'white'),
(1, 'black'),
(2, 'white'),
(2, 'black'),
(2, 'purple'),
(3, 'blue'),
(4, 'white'),
(4, 'orange'),
(4, 'gold'),
(4, 'gray'),
(5, 'white'),
(5, 'orange'),
(5, 'gold'),
(5, 'gray'),
(6, 'black'),
(7, 'black'),
(7, 'white');
-Buat query SQL untuk dapat menampilkan data yang sama dengan
contoh diatas
1. Menggunakan $and (SQL):
SELECT name, price, color
FROM products
JOIN product_colors ON products.id = product_colors.product_id
WHERE price = 899
AND color IN ('white', 'black');
2. Menggunakan $or (SQL):
SELECT name, price
FROM products
WHERE price = 799 OR price = 899;
SELECT name, price
FROM products
WHERE price < 699 OR price > 799;
3. Menggunakan $not (SQL):
SELECT id AS _id, name, price
FROM products
WHERE price IS NULL OR NOT (price > 699);
SELECT name
FROM products
WHERE name NOT REGEXP '^Smart+';
4. Menggunakan $nor (SQL):
SELECT name, price, color
FROM products
LEFT JOIN product_colors ON products.id =
product_colors.product_id
WHERE (price IS NULL OR price != 899) AND (color IS NULL OR
color != 'gold');
5. Menggunakan $exists (SQL):
SELECT name, price
FROM products
WHERE price IS NOT NULL OR price IS NULL;
SELECT name, price
FROM products
WHERE price IS NOT NULL AND price > 699;
SELECT name, price
FROM products
WHERE price IS NULL;


.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)

.png)
Komentar
Posting Komentar