SQL yang tak terbatas



Anda telah mempelajari bahwa kueri SQL menggunakan SELECT, FROM, dan WHERE untuk menentukan data mana yang akan dikembalikan. Bacaan ini memberikan informasi terperinci bagaimana memformat kueri, menggunakan kondisi WHERE, memilih semua kolom di tabel, menambahkan komentar, dan menggunakan alias. Semua ini memudahkan Anda untuk memahami (dan menulis) kueri ketika digunakan di SQL. Bab terakhir dari bacaan ini adalah memberikan contoh pengambilan data karyawan di sebuah proyek yang akan dikerjakan analis data. 

Penulisan huruf besar, penempatan indent, dan penulisan titik koma

Anda dapat menulis kueri SQL Anda dengan menggunakan huruf kecil dan tidak perlu khawatir mengenai ruang ekstra di antara kata. Tetapi, penggunaan huruf besar dan penempatan indent dapat membantu Anda membaca informasi dengan lebih mudah. Pastikan kueri Anda tetap rapi, dan lebih mudah ditinjau atau diperbaiki jika nanti Anda memeriksanya.

Image of syntax for SELECT, FROM, and WHERE in SQL. SELECT field1 FROM table WHERE field1 = condition;

Perhatikan bahwa pernyataan SQL yang ditunjukkan di atas diakhiri dengan titik koma (semicolon). Titik koma merupakan penentu/pengakhir pernyataan dan bagian dari standar SQL-92 American National Standards Institute (ANSI), yang merupakan rekomendasi syntax umum yang diadopsi oleh semua database SQL. Tetapi, tidak semua database SQL telah mengadopsi atau menggunakan titik koma, jadi mungkin saja akan ditemukan beberapa pernyataan SQL yang tidak diakhiri dengan titik koma. Tidak mengapa, jika sebuah pernyataan kemudian berfungsi walau tidak diakhiri titik koma,

Kondisi WHERE

Di kueri yang ditunjukkan di atas, klausa SELECT mengidentifikasi kolom mana yang ingin Anda ambil datanya berdasarkan nama, field1, dan klausa FROM mengidentifikasi tabel tempat kolom berada berdasarkan nama, tabel. Jadi, klausa WHERE mempersempit kueri Anda sehingga database hanya mengembalikan data dengan kecocokan nilai yang tepat atau data yang sesuai dengan kondisi tertentu yang akan dipenuhi. 

Misalnya, jika Anda mencari pelanggan tertentu dengan nama belakang Chavez, klausa WHERE menjadi sebagai berikut: 

WHERE field1 = 'Chavez'

Tetapi, jika Anda mencari semua pelanggan dengan nama belakang huruf awal "Ch," klausa WHERE akan menjadi sebagai berikut:

WHERE field1 LIKE 'Ch%'

Dapat disimpulkan bahwa klausa LIKE sangat berfungsi karena memungkinkan Anda untuk berkomunikasi dengan database dalam pencarian pola spesifik! Tanda persen (%) digunakan sebagai pengganti untuk mencocokkan karakter berjumlah satu atau lebih. Contoh di atas, data Chavez dan Chen akan dikembalikan. Perhatikan bahwa pada beberapa database, tanda bintang (*) digunakan sebagai pengganti selain tanda persen (%).

SELECT semua kolom

Bisakah Anda menggunakan  SELECT *? 

Di contoh, jika Anda mengganti SELECT field1 dengan SELECT *, maka Anda akan memilih semua kolom di tabel selain kolom field1 saja. Dari sudut pandang syntax, pernyataan SQL ini benar, tetapi Anda harus menggunakan tanda bintang (*) dengan hemat dan hati-hati. Tergantung dari berapa banyak kolom yang ada di sebuah tabel, bisa saja Anda memilih sejumlah data yang banyak sekali. Memilih terlalu banyak data dapat menyebabkan kueri berjalan lambat.

Komentar

Beberapa tabel tidak dirancang dengan deskripsi konvensi penamaan. Di contoh, field1 adalah kolom untuk nama belakang pelanggan, tetapi namanya tidak diketahui. last_name adalah pemilihan nama yang lebih baik. Di kasus ini, Anda dapat menempatkan komentar di sepanjang SQL supaya Anda mengingat apa yang diwakili oleh nama tersebut. Komentar adalah teks yang ditempatkan di antara karakter tertentu, /* dan */, atau setelah dua tanda hubung (--) seperti yang ditunjukkan di bawah ini. 

Image of SQL statements with comments shown between /* and */ and after --

Komentar juga dapat ditambahkan di luar atau di dalam pernyataan. Anda dapat menggunakan fleksibilitas ini untuk memberikan deskripsi keseluruhan yang akan dilakukan, catatan mengenai langkah demi langkah bagaimana Anda mencapainya, dan mengapa Anda menetapkan parameter/kondisi yang berbeda.

-This is an important query used later to join with the accounts table. SELECT rowkey, Info.date, Info.code FROM Publishers

Semakin Anda terbiasa dengan SQL, semakin mudah untuk membaca dan memahami kueri dalam sekilas. Tetapi, tidak ada salahnya untuk berkomentar di kueri untuk mengingatkan apa yang akan Anda lakukan nanti. Hal ini juga memudahkan orang lain untuk memahami kueri Anda jika membagikan kueri Anda tersebut ke orang lain. Ketika kueri Anda menjadi semakin kompleks, cara ini akan menghemat banyak waktu dan energi untuk memahami kueri kompleks yang telah Anda tulis berbulan-bulan atau bahkan bertahun-tahun yang lalu. 

Contoh kueri dengan komentar

Berikut ini adalah contoh komentar yang ditulis di BigQuery:

SELECT customer_id, first_name, last_name FROM customer_data.customer_name

Di contoh di atas, suatu komentar telah ditambahkan sebelum pernyataan SQL untuk menjelaskan apa yang dilakukan kueri. Selain itu, komentar yang telah ditambahkan di samping masing-masing nama kolom berfungsi untuk mendeskripsikan kolom serta penggunaannya. Dua tanda hubung (--) umumnya didukung. Penggunaan terbaik adalah menggunakan -- dan secara konsisten menggunakannya. Anda dapat menggunakan # sebagai pengganti -- pada kueri di atas, tetapi # tidak dikenali di semua versi SQL; misalnya, MySQL tidak mengenali #.  Anda juga dapat menempatkan komentar di antara /* dan */ jika database yang digunakan juga mendukungnya. 

Ketika Anda mengembangkan keterampilan Anda secara profesional, tergantung pada database SQL yang digunakan, Anda dapat memilih simbol pembatasan komentar yang Anda sukai dan tetaplah konsisten menggunakannya. Ketika kueri Anda menjadi semakin kompleks, cara penambahan komentar yang bermanfaat akan menghemat banyak waktu dan energi untuk memahami kueri yang mungkin telah Anda tulis berbulan-bulan atau bahkan bertahun-tahun sebelumnya.

Alias

Anda juga dapat mempermudah dengan menetapkan nama atau alias baru ke dalam kolom atau nama tabel untuk membuatnya lebih mudah digunakan (dan menghindari penggunaan komentar). Hal ini dilakukan dengan klausa SQL AS. Di contoh di bawah ini, alias last_name penanda untuk field1 dan alias pelanggan adalah penanda tabel. Alias ini hanya berlaku selama durasi kueri tersebut saja. Alias tidak mengubah nama sebenarnya dari kolom atau tabel dalam database.

Contoh kueri dengan alias

Image of a screen shot with alias examples: field1 AS last_name and table AS customers. Each alias has a comment with --.

Menggunakan SQL sebagai analis data

Bayangkan jika Anda sebagai analis data di bisnis kecil dan manajer Anda meminta beberapa data karyawan. Anda memutuskan untuk menulis kueri dengan menggunakan SQL untuk mendapatkan data apa yang Anda butuhkan dari database. 

Anda ingin mendapatkan semua kolom: empID, firstName, lastName, jobCode, dan salary. Karena Anda mengetahui jika database tidak sebesar itu, daripada memasukkan setiap nama kolom dengan menggunakan klausa SELECT, Anda menggunakan SELECT *.  Hal ini akan memilih semua kolom yang ada di tabel Karyawan pada klausa FROM.

SELECT* FROM Employee

Sekarang, Anda bisa mendapatkan data lebih spesifik yang diinginkan dari tabel Karyawan. Jika Anda ingin semua data tentang karyawan yang bekerja dengan kode pekerjaan SFI, Anda dapat menggunakan klausa WHERE untuk memfilter data berdasarkan persyaratan tambahan ini. 

Anda dapat menggunakan:

SELECT * FROM Employee WHERE jobCode = 'SFI'

Sebagian data yang dihasilkan yang dikembalikan oleh kueri SQL mungkin terlihat sebagai berikut:

empID

firstName

lastName

jobCode

salary

0002

Homer

Simpson

SFI

15000

0003

Marge

Simpson

SFI

30000

0034

Bart

Simpson

SFI

25000

0067

Lisa

Simpson

SFI

38000

0088

Ned

Flanders

SFI

42000

0076

Barney

Gumble

SFI

32000

Misalkan Anda melihat kisaran gaji yang besar untuk kode pekerjaan SFI. Anda mungkin ingin menandai semua karyawan yang memiliki gaji lebih rendah yang ada di semua departemen sebagai data untuk manajer Anda. Karena magang juga termasuk dalam tabel dan mereka memiliki gaji kurang dari $30.000, maka Anda ingin hasil pencarian data yang dilakukan memastikan bahwa hanya karyawan yang bekerja penuh dengan gaji $30.000 atau kurang akan termasuk. Dengan kata lain, Anda ingin mengecualikan magang dengan kode pekerjaan INT yang juga memiliki penghasilan kurang dari $ 30.000. Klausa AND memungkinkan Anda untuk menguji kedua kondisi tersebut. 

Anda membuat kueri SQL yang mirip di bawah ini, di mana <> berarti "tidak sama":

Data yang dihasilkan dari kueri SQL terlihat sebagai berikut (magang dengan kode pekerjaan INT tidak dikembalikan):

empID

firstName

lastName

jobCode

salary

0002

Homer

Simpson

SFI

15000

0003

Marge

Simpson

SFI

30000

0034

Bart

Simpson

SFI

25000

0108

Edna 

Krabappel

TUL

18000

0099

Moe 

Szyslak

ANA

28000

Dengan menggunakan SQL maka diperoleh akses data yang cepat, Anda dapat menyediakan data karyawan dari banyak sudut pandang yang berbeda ke manajer Anda, termasuk apakah gaji karyawan di perusahaan sudah sesuai dan merata. Bagusnya, kueri hanya menunjukkan dua karyawan tambahan yang mungkin memerlukan penyesuaian gaji dan Anda dapat membagikan data tersebut ke manajer Anda. 

Mendapatkan data, menganalisisnya, dan menerapkan solusi pada akhirnya dapat membantu untuk meningkatkan kepuasan dan loyalitas karyawan. Hal ini membuat SQL menjadi alat yang cukup handal. 

Sumber untuk mempelajari lebih lanjut

Bukan pelanggan dapat mengakses sumber ini secara gratis, tetapi jika sebuah situs membatasi jumlah artikel gratis per bulannya dan apabila jumlah sumber yang Anda akses sudah mencapai batas, tandai sumber tersebut dan kembali lagi ke sana di kemudian hari.

  • Tutorial W3Schools SQL: Jika Anda ingin mengeksplorasi tutorial SQL secara rinci, maka di sinilah tempat yang sempurna untuk mulai berlatih. Tutorial ini mencakup contoh interaktif yang dapat diedit, diuji, dan dibuat ulang. Gunakanlah sebagai referensi atau pelajari seluruh tutorial untuk berlatih menggunakan SQL. Klik tombol Start learning SQL now atau tombol Next untuk memulai tutorial.

Contekan SQL: Untuk pelajar yang lebih mahir, buka artikel ini untuk menggunakan standar syntax SQL di PostgreSQL. Pada saat Anda selesai, Anda akan memahami lebih banyak tentang SQL dan siap menggunakannya sebagai analisis bisnis ataupun pekerjaan lainnya.

Tidak ada komentar: