Penggunaan SQL WHERE, Fungsi, dan Contohnya
Yuk, pelajari penggunaan SQL WHERE, fungsi, sekaligus contohnya!
Data Analytics
Alika Pratama R Lamoni
Di dalam SQL terdapat dua syntax wajib yang harus ada agar kita dapat menarik sebuah data atau yang biasa kita sebut query, yaitu SELECT dan FROM.
SELECT adalah syntax untuk memilih kolom yang akan kita ambil dari sebuah tabel. Sedangkan FROM adalah syntax untuk menentukan di mana tabel dan dataset yang akan kita ambil datanya. Seperti contoh di bawah ini:
Syntax
Output
Pada contoh di atas, kolom yang dipilih adalah tripduration, starttime, dan stoptime yang berada pada dataset “bigquery-public-data.new_york_citibike” dengan nama tabel yaitu “citibike_trips”. Lalu, bagaimana caranya jika kita hanya ingin mendapatkan data starttime pada tahun 2018 saja?
Apa itu WHERE dalam SQL?
Sering kali, sebagai data analyst kita tidak perlu mengambil seluruh data yang ada pada sebuah tabel/dataset melainkan hanya beberapa informasi yang kita perlukan saja dalam proses analisis.
Hal ini dilakukan dengan tujuan agar proses query yang kita lakukan dapat lebih cepat, ukuran data yang akan kita export juga lebih kecil, dan terkadang juga menjadi lebih murah. Alasannya, ada beberapa tools yang mengharuskan kita membayar pada setiap query yang kita lakukan berdasarkan besarnya data yang kita ambil, seperti pada Google BigQuery.
Untuk itu, terdapat syntax di dalam SQL yang dapat membantu kita dalam filtering data yang akan kita ambil yaitu dengan menggunakan syntax WHERE.
Dengan menggunakan WHERE kita dapat membuat filter dari data yang akan kita ambil, dengan cara menentukan condition yang ditulis dengan menggunakan beberapa operator. Secara umum, syntax pada SQL dengan menggunakan WHERE adalah sebagai berikut:
Perlu diingat bahwa urutan syntax di dalam SQL harus berurutan seperti di atas, WHERE selalu berada setelah FROM dan SELECT selalu berada di atas FROM. Karena jika kita salah mengurutkan syntax, maka query kita tidak akan berhasil, atau error.
Jenis-jenis Operator untuk WHERE
Di dalam SQL terdapat 9 operator yang dapat membantu kamu dalam menentukan conditional dengan WHERE. Kita akan bahas lebih lanjut dari setiap penggunaan operator di dalam artikel ini. Operator-operator tersebut antara lain sebagai berikut:
Cara dan Contoh Penulisan Syntax WHERE di SQL
Sebagai contoh cara menuliskan syntax WHERE di SQL, kita akan menggunakan satu buah dataset yang sama agar kamu bisa bereksperimen langsung dengan dataset yang dapat diakses secara bebas yaitu “New York Citibike” dengan tabel-nya yaitu “citibike_trips” dan kolom yang kita gunakan hanya tripduration, starttime, start_station_name, birth_year, dan usertype.
Dataset ini dapat diambil dari Google BigQuery Public Dataset. Bentuk tabel tersebut adalah sebagai berikut yang menggambarkan pengguna layanan sepeda dari New York Citibike:
#1 Operator “=”
Case:
Di dalam kolom start_station_name yang memuat nama-nama stasiun dari saat user mulai berangkat menggunakan sepeda, terdapat 918 nama stasiun di dalamnya. Kita akan mengambil data hanya dari stasiun dengan nama “Broadway & W 53 St”.
Syntax:
Output:
#2 Operator “>”
Case:
Rata-rata trip duration adalah 962.49 detik atau sekitar 16 menit. Kita ingin mengambil data untuk trip duration yang lebih dari rata-rata.
Syntax:
Output:
#3 Operator “<”
Case:
Sama seperti contoh nomor 2, namun kita ingin mengambil data dengan trip duration di bawah rata-rata.
Syntax:
Output:
#4 Operator “>=”
Case:
Rata-rata tahun kelahiran dari user yang menggunakan layanan New York Citibike adalah tahun 1977. Kita ingin mengambil data untuk user yang memiliki tahun kelahiran lebih besar dari atau sama dengan tahun 1977.
Syntax:
Output
#5 Operator “<=”
Case:
Sama dengan contoh nomor 4, namun kita ingin mengambil data user yang memiliki tahun kelahiran kurang dari atau sama dengan 1977.
Syntax:
Output:
{{COMPONENT_IDENTIFIER}}
#6 Operator “<>” atau “!=”
Case:
Di dalam usertype terdapat dua jenis yaitu “Subscriber” dan juga “Customer”. Namun, di dalamnya terdapat baris yang kosong atau null. Kita ingin mengambil data dengan usertype yang bukan “Subscriber” saja dan bukan null values.
Syntax:
Output:
#7 Operator BETWEEN
Case:
Data di dalam kolom starttime berada pada rentang tanggal 01-07-2013 sampai dengan 31-05-2018. Kita ingin mengambil data pada tahun 2014 saja.
Syntax:
Output:
Sebagai catatan:
Perlu diperhatikan jika operator BETWEEN sama dengan syntax “>= AND <” sehingga dia tidak akan mengambil data yang sama dengan condition di sebelah kanan. Maka, untuk mengambil data pada rentang maksimal (pada case ini adalah tanggal 2014-12-31), kita akan melebihkan 1 nilai agar data yang dimaksud dapat ikut terambil (pada case ini kita menambahkan 1 hari menjadi 2015-01-01).
#8 Operator LIKE
Case:
Kita ingin mengambil data pada start_station_name dengan nama yang memiliki kata “William” di dalamnya.
Syntax:
Output:
Sebagai catatan:
Perlu diperhatikan jika kita ingin memenggal sebuah kata dari dalam kalimat/teks. Pada contoh di atas digunaan simbol “%” yang berarti kita ingin mengambil kata “William” dengan tidak mempedulikan kata yang berada sebelumnya ataupun sesudahnya.
Namun, jika kita hanya menggunakan simbol “%” di belakang kata “WIlliam”, maka itu berarti kita mengambil data yang memiliki kata “WIlliam” di depannya dan mengabaikan kata setelahnya.
#9 Operator IN
Case:
Kita ingin mengambil data dengan tahun kelahiran user hanya pada tahun 1943 dan 1996.
Syntax:
Output:
Penutup
Syntax WHERE akan sangat sering kita gunaan dalam melakukan query dengan menggunakan SQL. Seperti pada penjelasan di atas, fungsi syntax WHERE akan memudahkan kita dalam filtering data yang akan kita gunakan.
Sekarang kita juga sudah tahu jenis-jenis operator yang dapat digunakan dalam syntax WHERE sehingga dapat membantu kita dalam melakukan query. Dengan menguasai penggunaannya dapat mempermudah analisis kamu dalam proses data cleaning dan data transformation.
Terus berlatih sampai kamu mahir dengan membaca referensi lain juga, ya! Selamat bereksperimen!
syntax wajib yang harus ada agar kita dapat menarik sebuah data atau yang biasa kita sebut query, yaitu SELECT adalah syntax untuk menentukan di mana tabel dan