Beberapa klausa dalam MySQL yang digunakan untuk mengurutkan, memfilter, mencari dan juga menghitung data

Selamat malam teman-teman, malam ini kita akan mencoba beberapa klausa dalam MySQL untuk mengurutkan, membandingkan, mencari dan juga menghitung data. 

Pertama-tama, kita import terlebih dahulu database yang akan kita gunakan dengan masuk ke menu import seperti dibawah ini.

Gambar 1 Import database

Lalu kita pilih file sql yang akan kita import. Kali kita mencoba menggunakan database yang ada pada https://www.mysqltutorial.org/wp-content/uploads/2018/03/mysqlsampledatabase.zip . Setelah kita import database tadi, saatnya kita mencoba query untuk mengurutkan, memfilter, mencari dan menghitung data menggunakan operator matematika.

Untuk mengurutkan data, kita bisa menggunakan klausa ORDER dengan posisi mengurutkan menaik(ASC) ataupun menurun(DESC).

Berikut contoh query menggunakan klausa ORDER tanpa posisi urutan dimana secara otomatis akan diurutkan menaik. Sebagai contoh query
SELECT productName, buyPrice, quantityInStock
FROM products
ORDER BY buyPrice;
Gambar 2 Query ORDER

Hasil di atas akan sama dengan query di tambahkan urutan ASC. Sebagai contoh query
SELECT productName, buyPrice, quantityInStock
FROM products
ORDER BY buyPrice ASC;
Gambar 3 Query ORDER ASC

Untuk data yang dihasilkan dari kedua query diatas sama. Hal ini akan berbeda jika kita merubah urutan query menjadi DESC. Sebagai contoh query
SELECT productName, buyPrice, quantityInStock
FROM products
ORDER BY buyPrice DESC;
Gambar 4 Query ORDER DESC

Dari gambar hasil query diatas, kita dapat melihat data pertama antara query 1,2 dan juga query 3 sangat berbeda. Dikarenakan query 1 dan query 2 menggunakan urutan buyPrice dari kecil ke besar sedangkan query 3 menggunakan urutan buyPrice dari besar ke kecil.

Kedua kita akan mencoba memfilter data menggunakan klausa WHERE dan beberapa operator perbandingan seperti
= (sama dengan)
> (lebih dari)
< (kurang dari)
>= (kurang dari sama dengan)
<= (lebih dari sama dengan)
<> atau != (tidak sama dengan)
Untuk operator =(sama dengan), kita akan mencoba memfilter data dengan syarat productLine adalah Motorcycles. Kita jalankan query
SELECT *
FROM products
WHERE productLine = 'Motorcycles';
Gambar 5 Query Filter Sama Dengan

Untuk operator < (kurang dari), kita akan mencoba memfilter data dengan syarat quantityInStock kurang dari 50. Kita jalankan query
SELECT *
FROM products
WHERE quantityInStock < 50;
Gambar 6 Query Filter Kurang Dari

Untuk operator > (lebih dari), kita akan mencoba memfilter data dengan syarat buyPrice lebih dari 200. Kita jalankan query
SELECT *
FROM products
WHERE buyPrice > 100;
Gambar 7 Query Filter Lebih Dari

Untuk operator <= (kurang dari sama dengan), kita akan mencoba memfilter data dengan syarat quantityInStock kurang dari 100 atau sama dengan 100. Kita jalankan query
SELECT *
FROM products
WHERE quantityInStock <= 100;
Gambar 8 Query Filter Kurang Dari Sama Dengan 

Untuk operator <> (tidak sama dengan), kita akan mencoba memfilter data dengan syarat productLine tidak sama dengan Motorcycles. Kita jalankan query
SELECT *
FROM products
WHERE productline <> 'Motorcycles';
Gambar 9 Query Filter TIdak Sama Dengan

Ketiga kita akan mencoba memfilter data menggunakan klausa WHERE dan beberapa operator logika seperti
AND
OR
NOT
Untuk operator AND, kita akan mencoba memfilter data dengan syarat productLine adalah Motorcycles dan quantityInStock lebih dari 50. Kita jalankan query
SELECT *
FROM products
WHERE productline = 'Motorcycles' 
AND quantityInStock > 50;
Gambar 10 Query Logika AND

Untuk operator OR, kita akan mencoba memfilter data dengan syarat productLine adalah Motorcycles atau Classic Cars. Kita jalankan query
SELECT *
FROM products
WHERE productline = 'Motorcycles' 
OR productLine = 'Classic Cars'
ORDER BY productCode;
Gambar 11 Query Logika OR

Selain menggunakan OR, ketika kita ingin memfilter kolom yang sama, kita bisa menggunakan operator IN. Kita jalankan query
SELECT *
FROM products
WHERE productline IN ('Motorcycles', 'Classic Cars')
ORDER BY productCode;
Gambar 12 Query Logika IN

Untuk operator NOT,  kita akan mencoba memfilter data dengan syarat productLine bukan Classic Cars. Kita jalankan query
SELECT *
FROM products
WHERE NOT productLine = 'Classic Cars'
ORDER BY productCode;
Gambar 13 Query Logika NOT

Keempat kita akan mencoba mencar data menggunakan klausa WHERE dan operator LIKE. Dengan operator LIKE ini kita dapat mencari data dengan hanya mengetahui bagian kata di awal(prefix), ditengah(infix), maupun di akhir(postfix). Sebagai contoh kita akan mencari data dengan syarat productName yang di awali dengan kata 1993. Untuk querynya seperti dibawah
SELECT *
FROM products
WHERE productName LIKE '1993%'
ORDER BY productCode;
Gambar 14 Query Filter Prefix LIKE

Lalu kita akan mencoba mencari data dengan syarat productName diakhiri dengan kata Bike. Untuk querynya seperti dibawah
SELECT *
FROM products
WHERE productName LIKE '%Bike'
ORDER BY productCode;
Gambar 15 Query Postfix LIKE

Lalu kita akan mencoba mencari data dengan syarat kata tengah pada kolom productName adalah Harley. Untuk querynya seperti dibawah
SELECT *
FROM products
WHERE productName LIKE '%Harley%'
ORDER BY productCode;
Gambar 16 Query Infix LIKE

Kelima kita akan mencoba menggunakan operator matematika seperti
*(perkalian)
/(pembagian)
+(penambahan)
-(pengurangan)
Untuk operator ini kita akan mencoba menampilkan data nama produk, harga, diskon 10% dari harga, harga setelah di diskon dengan kriteria diskon lebih dari 9 dan diurutkan berdasarkan besarnya diskon dari yang terbesar ke yang kecil.
SELECT productName as produk, 
buyPrice as harga, 
0.1*buyPrice as diskon,
buyPrice-1/10*buyPrice as hargasetelahdiskon
FROM products
WHERE 0.1*buyPrice > 9
ORDER BY diskon DESC;
Gambar 17 Query Operator Matematika

YEAAYYY..... Kita sudah berhasil menjalankan beberapa  klausa dalam MySQL yang digunakan untuk mengurutkan, memfilter, mencari dan juga menghitung data. Jangan lupa baca blog saya yang lain. Terimakasih

Komentar

Postingan populer dari blog ini

Mendefinisikan metadata dari sebuah artikel

Cara remote MySQL menggunakan XAMPP di Windows