>db.nama_koleksi.insert(dokumen)
Berikut ini adalah perintah untuk memasukkan data client:
>db.client.insert({clientno:"CR76",fname:"John",lname:"Ke
y"});
WriteResult({ "nInserted" : 1 })
Untuk melihat data yang sudah kita masukkan, kita dapat menggunakan perintah
find():
> db.client.find();
1
{ "_id" : ObjectId("619efa0273d615ed820b7bdc"),
"clientno" : "CR76", "fname" : "John", "lname" : "Key" }
>
Untuk melakukan insert multiple documment kita dapat membuat perintah insert
dengan menggunakan array data. Di MongoDB kita juga dapat melakukan insert
dengan field yang berbeda antar dokumen. Perintah di bawah
> db.client.insert(
...[
...{clientno: "CR56", fname: "Aline", lname: "Steward"},
...{clientno: "CR74", fname: "Mike", lname: "Ritchie",
telno:"01475-943-1728"}
...]
...);
>db.nama_koleksi.find()
2
Untuk menampilkan hasil format yang lebih mudah untuk dibaca, kita dapat
menggunakan metode pretty() .
> db.client.find().pretty();
Operation Syntax
3
Dan ({ $and: [ {<key1>:<value1>}
Atau ({ $or: [ {<key1>:<value1>}
Buat koleksi propertyforrent:
db.propertyforrent.insert(
[
{propertyno:"PA14",street:"16
Holhead",city:"Aberdeen",postcode:"AB7
5SU",type:"House",rooms:6,rent:650,ownerno:"CO46",staffno
:"SA9",branchno:"B007"},
{propertyno:"PL94",street:"6 Argyll
St",city:"London",postcode:"NW2",type:"Flat",rooms:4,rent
:400,ownerno:"CO87",staffno:"SL41",branchno:"B005" },
{propertyno:"PG4",street:"6 Lawrence
St",city:"Glasgow",postcode:"G11
9QX",type:"Flat",rooms:3,rent:350,ownerno:"CO40",
branchno:"B003"},
{propertyno:"PG36",street:"2 Manor
Rd",city:"Glasgow",postcode:"G32
4QX",type:"Flat",rooms:3,rent:375,ownerno:"CO93",staffno:
"SG37",branchno:"B003" },
{propertyno:"PG21",street:"18 Dale
Rd",city:"Glasgow",postcode:"G12",type:"House",rooms:5,re
nt:600,ownerno:"CO87",staffno:"SG37",branchno:"B003"},
{propertyno:"PG16",street:"5 Novar
Dr",city:"Glasgow",postcode:"G12
9AX",type:"Flat",rooms:4,rent:450,ownerno:"CO93",staffno:
"SG14",branchno:"B003" }
]
)
db.propertyforrent.find({"rent":{$lt:400}}).pretty()
4
2) AND
Untuk mengkueri dokumen berdasarkan kondisi AND, kita perlu menggunakan
$and kata kunci. Berikut ini adalah sintaks dasar AND:
db.propertyforrent.find({$and:[{"city":"Glasgow"},{"type"
: "Flat"}]}).pretty()
5
3) OR
Tampilkan jalan, kota, tipe dan harga properti yang ada di kota London dan
Aberdeen:
db.propertyforrent.find(
{$or:[{"city":"London"},{"city": "Aberdeen"}]},
{"street":1, "city":1,"type":1,"rent":1, _id:0}
).pretty()
4) Projection
Proyeksi berarti memilih hanya data yang diperlukan daripada memilih seluruh
data dokumen. Jika dokumen memiliki 5 bidang dan Anda hanya perlu menampilkan 3
bidang, maka pilih hanya 3 bidang darinya. Berikut adalah contoh proyeksi koleksi
client, di mana kita hanya ingin menampilkan field fname dan lname pada koleksi
client:
> db.client.find({},{"fname":1,"lname":1,
_id:0}).pretty();
{ "fname" : "John", "lname" : "Key" }
{ "fname" : "Aline", "lname" : "Steward" }
{ "fname" : "Mike", "lname" : "Ritchie" }
6
Field _id akan selalu ditampilkan saat menjalankan metode find(), jika kita
tidak menginginkan field ini, maka kita perlu menetapkannya sebagai 0.
5) Join
Kita akan melakukan perintah join untuk menampilkan data branch dan juga data
staff. Misal kita memilik data staff yang dimasukkan dengan perintah berikut:
db.staff.insert({staffno:"SL21",fname:"John",lname:"White
", position:"Manager", brancho:"B005"});
db.staff.insert({staffno:"SL41",fname:"Julie",lname:"Lee"
, position:"Assitant", brancho:"B005"});
Misal kita memilih data branch yang kita masukkan dengan perintah berikut:
db.branch.insert({branchNo:"B005",street:"22 Deer Rd",
city:"London", postcode:"SW1 4EH"});
db.branch.insert({branchNo:"B007",street:"16 Argyll St",
city:"Aberdeen", postcode:"AB2 3SU"});
7
Perintah untuk melakukan join pada MongoDB sebagai berikut:
db.branch.aggregate([
{ $lookup:
{
from: "staff",
localField: "branchno",
foreignField: "branchno",
as: "staff"
}
}
]).pretty();
8
1.4.3. Update Document
Pada MongoDB untuk memperbarui dokumen pada koleksi kita dapat
menggunakan metode update() dan save(). Metode update() memperbarui nilai
dalam dokumen yang ada sementara metode save() menggantikan dokumen yang ada
dengan dokumen yang diteruskan dalam metode save()
1) Metode Update()
Metode update() digunakan untuk memperbarui dokumen yang ada dalam
koleksi.
db.client.find({}, {_id:0}).pretty();
9
Berikut adalah contoh perintah untuk melakukan update data client dengan kode
CR76 dengan menambahkan nomer telepon 0171-774-5632:
db.client.update({'clientno':'CR76'},{$set:{'telno':'0171
-774-5632'}});
2) Metode save()
Metode save() digunakan untuk melakukan mengganti dokumen yang ada di
koleksi.
>db.nama_koleksi.save({_id:ObjectId(),data_baru})
10
Gantikan data client Aline Steward dengan _id
db.client.save(
{
"_id" : ObjectId("619f187d73d615ed820b7bec",
clientno: "CR62",
fname:"Mary",
lname:"Tregear",
telpno:"01224-196720"
}
);
11
1.4.4. Delete Document
Untuk menghapus semua data yang ada pada suatu koleksi, kita dapat
menggunakan perintah db.client.remove({});
> db.client.remove({});
WriteResult({ "nRemoved" : 3 })
12
1.5. Penugasan
Kerjakan sesuai dengan yang dijelaskan pada bagian Kegiatan Praktikum. Hasil
pekerjaan praktikum dilaporkan dalam bentuk file lembar kerja dengan format nama
<<nim>>_modul14, contoh: 192191234_modul14.
13