WHERE untuk Menyeleksi Baris di MySQL || Database #4

Callysa Tanjaya
6 min readSep 21, 2023

--

Halo teman-teman semua! Pada kesempatan kali ini saya bersama dengan rekan saya Liora Carlita ingin melanjutkan artikel pembelajaran Sistem Basis Data. Ini merupakan artikel ke 4 yang telah kami buat, dan saya akan cantumkan 3 artikel sebelumnya yang sudah kami buat agar teman-teman pembaca bisa mengikuti pembelajaran dari awal.

Artikel 1: Mencoba Membuat New Connection SQL Database Sebagai Pemula || Database #1

Artikel 2: SELECT untuk Menyeleksi Kolom di MySQL || Database #2

Artikel 3: ORDER BY untuk Mengurutkan Data dalam SQL|| Database #3

Yuk dari pada berlama-lama lagi, mari kita masuk ke inti pembahasan!

Dalam artikel sebelumnya kita mempelajari Query sederhana seperti gambar diatas yang berarti kita ingin memilih semua kolom yang terdapat dalam tabel employees. Kemudian saat kita block dan run maka akan muncul data seperti gambar di bawah ini.

Data dalam tabel employees

Kemudian jika kita ingin mendapatkan hasil output lastname, firstname, dan jobtitle saja, maka setelah select kita bisa ikuti dengan lastname, firstname, jobtitle. Kemudian kita block dan run maka hasil output akan muncul seperti gambar di bawah ini.

Data Lastname, Firstname, Jobtitle.

Sekarang kita ingin menseleksi lastname, firstname, dan jobtitle dari table employees berdasarkan jobtitle yang berisi Sales Rep, disini kita mulai menggunakan klausa Where diikuti dengan jobtitle = ‘Sales Rep’;, karena data ‘Sales Rep’ merupakan String maka kita perku memperhatikan penulisan huruf besar dan kecilnya, dalam kasus ini kita ketik S dan R dengan huruf besar pada Self Rep.

Ketika sudah difilter atau diseleksi, maka hasil output akan muncul seperti ini jika data memenuhi syarat jobtitle = Sales Rep.

Kemudian kita dihadapkan dengan kebutuhan baru dimana kita harus menambahkan data officecode dan memfilter agar officecode yang dimunculkan bernilai 1.

Operator Logika AND.

Dan sekarang kita harus menyelesaikan 2 kondisi, dimana kita harus mencari ‘Sales Rep’ dan officecode bernilai 1. Kita bisa menggunakan operator logika AND. Logika AND akan menghasilkan nilai benar/true jika datanya benar. Maka kita tambahkan officecode pada bagian Select, dan AND officecode= 1; pada bagian Where, maka hasil output akan seperti gambar di bawah ini.

Hasil output Officecode bernilai 1.
Operator Logika OR

Selain operator logika AND kita bisa menggunakan operator logika OR. Logika OR akan menghasilkan nilai true jika salah satu kondisinya bernilai true. Dalam konteks ini data yang harus muncul adalah data employess yang jobtitlenya berdasarkan Sales Rep atau officecodenya yang bernilai 1, dan jika salah satu syarat sudah terpenuhi maka bisa kita masukkan data tersebut kedalam output akhir.

Disini kita bisa lihat walaupun jobtitlenya adalah president, tetapi office codenya bernilai 1, karena ia sudah memenuhi syarat maka dimasukkan kedalam hasil akhir.

Kemudian kita bisa menggunakan klausa ORDER BY jika kita mau mengurutkan data. Contohnya jika kita ingin mengurutkan data office code terlebih dahulu dan kemudain diikuti dengan job title, kita bisa menambahkan klausa ORDER BY seperti gambar di bawah ini.

Kemudian hasil output akan mengurutkan sesuai perintah yang kita inginkan. Perlu diingat bahwa penulisan urutan Klausa juga penting. Untuk urutan penulisan, klausa select dimasukkan terlebih dahulu kemudian diikuti dengan from, lalu where, kemudian yang terakhir order by.

Kemudian jika ingin menampilkan data-data dalam employees yang berada pada officecode dengan rentang nilai 1 sampai dengan 3, kita bisa menggunakan operator between. Kemudian hasilnya akan seperti gambar di bawah ini.

Output officecode dengan rentang nilai 1 sampai dengan 3 menggunakan klausa Between,

Klausa WHERE juga dapat digunakan bersama operator “like”. Operator “like” ini mirip seperti operator sama dengan atau “=”. Kalau “=” digunakan untuk membandingkan dan mencocokkan 2 buah string atau angka secara keseluruhan, “like” digunakan untuk membandingkan dan mencocokkan per karakternya sesuai dengan pola yang diminta.

Ada 2 karakter spesial yang dapat digunakan untuk operator “like”, yaitu karakter persen “%” dan karakter underscore “_”. Persen “%” untuk merepresentasikan karakter apapun dengan jumlah berapapun (jumlahnya bebas), sedangkan underscore “_” untuk merepresentasikan karakter apapun dengan jumlah 1 karakter per underscorenya.

Langsung saja kita lihat contoh di bawah ini:

“Where lastname like “%son”” menampilkan data employees yang nama belakangnya berakhiran son, yaitu Thompson dan Patterson. Seperti yang dijelaskan di atas, tanda persen merepresentasikan karakter apapun dengan jumlah berapapun, jadi “%son” kurang lebih berarti “depannnya bebas apa aja dan berapa aja karakternya, yang penting diikuti akhiran son di belakangnya”.

Coba kita lihat contoh lain lagi:

Nah, sekarang kita menggunakan tanda underscore “_”.

“Where lastname like “_a%”” menampilkan data employees yang huruf ke-2 dari nama belakangnya adalah huruf A, dan tidak mempedulikan setelah A ada huruf-huruf apa lagi.

Kita coba lagi ya…

“Where lastname like “___n%”” menampilkan data employees yang huruf ke-4 dari nama belakangnya adalah huruf N karena di depan N ada 3 tanda underscore, dan tidak mempedulikan setelah N ada huruf-huruf apa lagi. Makanya hasil yang keluar adalah Jennings, Tseng, dan Hernandez.

Oke mari kita lanjutkan. Selain menggunakan operator “like”, ada juga operator “in”. Singkatnya, “in” bisa melakukan operasi “or” lebih dari 1 kali dalam 1 waktu.

Coba lihat contoh di bawah ini:

“Where officecode in (1,3,7)” menampilkan data employees yang officecodenya adalah angka 1 ATAU 3 ATAU 7.

Kalau kita ingin melihat data employees yang officecodenya lebih besar dari 5, kita gunakan “where officecode > 5”

Selain itu, klausa “where” juga dapat digabungkan dengan “is null” seperti contoh di bawah ini:

“Where reportsto is null” menampilkan data employees yang nilai “reportsto” nya bernilai NULL atau kosong. Kebetulan di database kita hanya ada 1 data yang “reportsto” nya NULL, yaitu Diane Murphy sang presiden.

Demikianlah cara menggunakan klausa “WHERE” untuk mengatur ketentuan output di SQL, semoga dari penjelasan dan contoh yang diberikan di dalam artikel ini, teman-teman bisa terbantu dan ikut belajar ya…

Terima kasih dan sampai jumpa di artikel berikutnya!

--

--