Perintah yang ada di My SQL

 



Select

           Salah satu perintah atau query yang cukup umum digunakan untuk mengambil data dari database dan tabel, adalah query SELECT

Sebuah database umumnya memiliki struktur penyusun. Di dalam sebuah database, terdapat berbagai macam objek SQL, seperti views, dataset, tabel, procedure, dan lainnya.

Dalam SQL, data ini tersimpan dalam tabel yang terdiri dari baris dan kolom. Tampilan tabel dalam SQL ini dapat dibayangkan sama seperti tampilan Google Sheets, di mana ada kolom yang berisi komponen tiap tabel, dan juga baris yang berisikan data penyusun tabel tersebut. 

Perintah SELECT digunakan untuk mengambil data pada tabel tersebut. Query ini dapat digabungkan dengan perintah SQL lainnya seperti WHEREJOINCASE-WHEN, dll., apabila kita ingin menerapkan beberapa kondisi penarikan tertentu, seperti: 

  • menginginkan penarikan data hanya dari beberapa kolom saja
  • filter kondisi di mana data mengandung unsur tertentu
  • menampilkan sebagian data saja

Bagaimana Cara Menggunakan SQL SELECT?

Cara penulisan query SELECT ini cukup mudah, hanya perlu menuliskan SELECT di awal, lalu diikuti dengan nama tabel. Perhatikan contoh penulisan query SELECT berikut: 

SELECT column1, column2, …..
FROM table_name

Bentuk penulisan query SELECT pada umumnya mengikuti bentuk seperti di atas. Apabila kita menjalankan query seperti query di atas, maka kita akan memilih beberapa atau semua kolom dari tabel. Apabila kolom terlalu banyak untuk dituliskan satu per satu, maka kita bisa menuliskan query di atas menjadi seperti ini: 

SELECT * FROM table_name

Di mana ‘*’ merupakan sebuah wildcard yang berarti mengambil semua kolom. Klausa FROM digunakan untuk menentukan nama tabel yang ingin kita ambil datanya. Sebagai contoh, kita akan mencoba untuk mengambil data order_idcustomer_id, dan customer_name dari tabel orders. Penulisan query untuk mengambil data tersebut adalah sebagai berikut: 

SELECT order_id, customer_id, customer_name FROM orders;

Dengan menjalankan query di atas, maka SQL akan menampilkan seluruh kolom yang kita pilih dari tabel bernama orders. Kita juga bisa menampilkan data sesuai dengan kriteria yang kita inginkan. 

Misalkan kita ingin mengambil data penjualan di mana order_date atau tanggal penjualan setelah bulan Januari 2023, kita bisa menuliskan sebuah kondisi tambahan pada query di atas. Untuk penulisan kondisi ini kita menggunakan klausa WHERE. Perhatikan contoh penulisannya berikut ini: 

SELECT order_id, customer_id, customer_name FROM orders
WHERE order_date >= ‘2023-01-01’

Penulisan klausa WHERE selalu dituliskan setelah klausa FROM. Cara membaca query di atas adalah kita akan memilih kolom order_idcustomer_id, dan customer_name dari tabel orders di mana data pada kolom order_date nilainya lebih besar dari ‘2023-01-01’ atau lebih besar dari tanggal 01 Januari 2023. 

Pada query di atas, walaupun kita menyertakan kolom order_date, namun kita tidak perlu menampilkan kolom order_date tersebut pada klausa SELECT, kecuali dibutuhkan. 


Like 


Dalam pengelolaan database, operator SQL LIKE berdiri sebagai tool yang esensial dan serbaguna. 

SQL LIKE adalah alat untuk mencari data yang cocok dengan pola tertentu. Operator ini hanya dapat diaplikasikan pada tipe data teks saja, seperti stringchar, dan varchar.

Di artikel ini, kita akan menggali lebih dalam tentang bagaimana LIKE membedakan dirinya dari operator pencarian lain, memberikan fleksibilitas dalam menemukan kecocokan data. Dari konsep dasar, penggunaan wildcard, sampai berbagai skenario praktis di mana LIKE menjadi pilihan utama, semua akan dibahas secara mendetail.


Sintaks SQL LIKE operator

Sintaks dasar dari operator LIKE dalam SQL adalah sebagai berikut:

SELECT kolom1, kolom2, ...
FROM nama_tabel
WHERE kolom LIKE pola;
  • kolom1, kolom2, ... adalah kolom yang ingin dipilih dari tabel.
  • nama_tabel adalah tabel tempat kamu mencari data.
  • kolom adalah kolom tempat untuk mencocokkan pola.

Elemen penting dalam sintaks ini adalah pola, yang bisa kamu tentukan menggunakan wildcardWildcard adalah karakter khusus yang dipakai dalam operator LIKE untuk menciptakan pola pencarian fleksibel.

Ada dua jenis wildcard utama dalam SQL:

  • Persentase (%): wildcard ini digunakan untuk menggantikan nol, satu, atau beberapa karakter. Misalnya, LIKE 'A%' akan mencocokkan semua entri yang dimulai dengan huruf "A", tidak peduli apa yang mengikutinya.
  • Underscore (_): wildcard ini berfungsi untuk menggantikan satu karakter saja. Misalnya, LIKE 'A__%' akan mencocokkan entri yang dimulai dengan "A" diikuti oleh dua karakter apa saja.

Kombinasi dari kedua wildcard memungkinkan pencarian yang lebih fleksibel. Misalnya, LIKE 'A%o' akan mencari entri yang dimulai dengan "A" dan diakhiri dengan "o", dengan jumlah karakter apa pun di antaranya.


Where


        Dalam contoh di atas, WHERE digunakan untuk memilih hanya baris dari tabel karyawan di mana nilai kolom usia lebih dari 30.
WHERE bisa digunakan dengan berbagai operator dan klausa lain seperti AND, OR, LIKE, BETWEEN, IN, dan sebagainya untuk membuat kondisi yang lebih kompleks.


AND & OR

             AND: Operator AND digunakan untuk menggabungkan dua atau lebih kondisi, dan hasil query hanya akan mengembalikan baris data yang memenuhi semua kondisi yang dihubungkan dengan operator AND.


Menggunakan Operator AND

Misalnya, kita memiliki tabel "pengguna" dengan kolom "usia" dan "jenis_kelamin," dan kita ingin mengambil pengguna yang berusia di atas 30 tahun dan jenis kelaminnya adalah "Laki-Laki":

SELECT * FROM pengguna WHERE usia > 30 AND jenis_kelamin = 'Laki-Laki';

Perintah di atas hanya akan mengambil pengguna yang berusia di atas 30 tahun dan memiliki jenis kelamin "Laki-Laki."

  1.            OR (||): Operator OR digunakan untuk menggabungkan dua atau lebih kondisi, dan hasil query akan mengembalikan baris data yang memenuhi salah satu atau lebih dari kondisi yang dihubungkan dengan operator OR.


Menggunakan Operator OR

Kita ingin mengambil pengguna yang berusia di atas 40 tahun atau memiliki jenis kelamin "Perempuan":

SELECT * FROM pengguna WHERE usia > 40 OR jenis_kelamin = 'Perempuan';

Perintah di atas akan mengambil pengguna yang berusia di atas 40 tahun atau memiliki jenis kelamin "Perempuan."


Between

Sering kali seorang data analyst mendapatkan permintaan untuk dapat memfilter data berdasarkan data-data tertentu. Filter tersebut dapat berupa kategori ataupun angka dengan jangka tertentu. Kalau untuk kategori, bisa filter dengan mudah. 

Bagaimana cara filter angka dengan jangka tertentu? Pertanyaan ini akan terjawab di artikel ini.

Apa itu BETWEEN dalam SQL?

BETWEEN merupakan sebuah operator dalam SQL yang digunakan sebagai filter dalam sebuah script query. BETWEEN dituliskan setelah command WHERE dan dapat digunakan untuk memfilter dengan output berupa data dalam range

BETWEEN dapat digunakan untuk data dengan tipe angka (float, integer), text, dan datetime. Apabila menggunakan BETWEEN, maka data yang akan ditampilkan akan disesuaikan dengan filter range tersebut.

Contoh penggunaan ini adalah ketika seorang data analyst di sebuah  bank ingin mencari nasabah dengan rentang usia antara 20 sampai 35 tahun. Maka dalam query-nya, ia akan menambahkan WHERE USIA BETWEEN 20 and 25. 

Ataupun contoh lainnya adalah data analyst tersebut ingin mencari nasabah dengan limit kartu kredit dalam range Rp10.000.000 sampai Rp15.000.000, maka dalam query yang ia tulis akan menambahkan filter limit kartu kredit dengan range yang diinginkan (WHERE limit BETWEEN 10.000.000 AND 15.000.000).

Untuk penggunaannya dalam SQL dapat dilihat pada gambar di bawah ini.

SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;

Nilai 1 merupakan nilai yang terkecil dan nilai 2 merupakan nilai terbesar dari jangkauan yang ingin kita gunakan sebagai filter. Penulisan nilai 1 dan 2 masih sama seperti penulisan filter lainnya, di mana untuk datetime dan text menggunakan tanda petik pada awal dan akhir.


Average sum count 

                 Pada SQL, kita tidak hanya dapat membuat tabel yang berisi value asli dari tabelnya. Di SQL, kita dapat juga membuat perhitungan/kalkulasi yang bersumber dari beberapa value dan menghasilkan sebuah value baru. 

Dalam artikel ini, kita akan membahas fungsi agregat yakni SQL SUM, COUNT, dan AVG.

Apa Itu Fungsi Agregasi?

          Fungsi agregasi pada SQL adalah sebuah fungsi yang akan menghasilkan sebuah value baru dari hasil perhitungan beberapa kolom pada sebuah query. Terdapat beberapa jenis fungsi agregasi SQL yang dapat kita gunakan, di antaranya:

  1. COUNT
  2. SUM
  3. AVG

Dalam menggunakan fungsi agregasi ini, biasanya diikuti oleh klausa GROUP BY ataupun HAVING. Penambahan GROUP BY biasanya digunakan apabila ada kolom lain yang ikut dipanggil dalam query kita.

Contohnya, kita ingin hasil agregasi perhitungan penjualan barang A dikelompokkan berdasarkan lokasi pembelian. Maka kita menambahkan klausa GROUP BY di akhir query. Sedangkan klausa HAVING digunakan pada saat kita akan menambahkan filter dari value yang kita inginkan. Filter HAVING ini digunakan untuk value yang merupakan hasil agregasi.

Sebagai contoh, seorang data analyst ingin mengetahui pendapatan perusahaan ABC selama 5 bulan dan dikelompokkan berdasarkan jenis produk yang perusahaannya jual. Maka pada query-nya, dia akan menggunakan fungsi SUM kolom pendapatan dan diikuti dengan GROUP BY berdasarkan produknya pada akhir query-nya.

Berikutnya contoh fungsi agregasi dan filter HAVING. Katakanlah seorang analis data di perusahaan yang sama ingin mengetahui pelanggan yang membeli produk dari perusahaannya dengan nominal lebih dari Rp 5.000.000, maka ia dapat menambahkan filter HAVING pada akhir query-nya dengan menuliskan: 

HAVING SUM(Belanja) > 5000000

Nilai yang digunakan pada HAVING dapat berupa lebih besar (>), lebih kecil (<) ataupun sama (=) dari value yang terdapat pada kolom.

Fungsi COUNT

             Fungsi agregasi COUNT adalah fungsi yang akan menghitung jumlah value dari sebuah kolom dari sebuah tabel. Fungsi COUNT ini dapat juga digabungkan dengan DISTINCT untuk menampilkan value yang unik dari sebuah kolom sehingga apabila ada value yang sama dari kolom tersebut tidak akan dihitung. Fungsi COUNT dapat digunakan untuk kolom dengan tipe data string ataupun numerik. Adapun untuk syntax-nya adalah seperti berikut.

SELECT
COUNT (Nama_Kolom)
FROM (Nama Tabel)
SELECT
COUNT (DISTINCT Nama_Kolom)
FROM Nama_Tabel

Untuk contoh hasil query COUNT dan COUNT DISTINCT bisa dilihat pada gambar berikut.

SELECT
COUNT (ProductID) as Jumlah_Order
FROM (OrderDetails]
Contoh hasil query COUNT
SELECT
COUNT (ProductID) as Jumlah_Order
FROM (OrderDetails]
Contoh hasil query COUNT DISTINCT

Dapat dilihat perbedaan hasil dari query di atas. Untuk query yang hanya menggunakan COUNT saja akan mendapatkan hasil yang lebih banyak karena semua value dari kolom tersebut akan dihitung. Sedangkan untuk hasil COUNT DISTINCT menghasilkan nilai yang lebih kecil karena hanya menghitung value yang unik dan tidak duplikat.






Komentar