Blogger Jateng

Pengambilan Data dengan Kueri SQL

Oleh karena itu, dengan adanya data besar yang menjadi cara dunia baru, mengakses dan memanipulasi data dengan cara yang efisien adalah keterampilan yang tak terelakkan. Pengambilan data dalam konteks sistem manajemen basis data relasional (RDBMS) terutama bergantung pada bahasa yang disebut Structured Query Language (SQL). Untuk ilmu data, analis bisnis, pengembang perangkat lunak, dan profesional dari berbagai domain perlu mengetahui tentang pernyataan kueri SQL. Pada artikel ini, kita akan membahas dasar-dasar SQL dan cara menggunakan kueri untuk mendapatkan wawasan yang berharga ke dalam basis data Anda.

Memahami Dasar-dasar SQL

SQL, yang merupakan singkatan dari Structured Query Language, adalah bahasa pemrograman standar untuk mengelola basis data relasional. Bahasa ini sangat kuat karena sederhana dan berhubungan dengan data terstruktur. Ada berbagai perintah dalam SQL yang dapat dikategorikan ke dalam empat jenis utama.

  1. Bahasa Permintaan Data (Data Query Language/DQL): Hanya pernyataan SELECT yang akan digunakan untuk mengambil data.
  2. Bahasa Manipulasi Data (DML): Terdiri dari perintah-perintah seperti INSERT, UPDATE, dan DELETE yang digunakan untuk memodifikasi data.
  3. Bahasa Definisi Data (Data Definition Language atau DDL): Berisi perintah seperti CREATE, ALTER, dan DROP untuk mendefinisikan struktur basis data.
  4. Bahasa Kontrol Data (DCL): Perintah seperti GRANT dan REVOKE digunakan untuk izin dan kontrol akses.

Di antaranya, perintah DQL, terutama SELECT, merupakan inti dari pengambilan data.

sumber: hosteko.com

Menulis Kueri SQL untuk Mengambil Data

Pernyataan SELECT adalah bagian paling mendasar dari pengambilan data Anda. Pengguna dapat menghapus data yang tidak diinginkan berdasarkan kondisi yang digunakan, dan juga mengurutkan hasil, serta menjumlahkan nilainya. Di bawah ini adalah sintaks dari kueri select.

SELECT column1, column2, ...

FROM table_name

WHERE condition

ORDER BY column_name ASC|DESC;

Komponen Kunci:

  • Kolom yang tersedia: Sesuaikan kolom yang ingin Anda ekstrak.
  • Tabel: Tentukan sumber Informasi.
  • Klausa WHERE: Memfilter baris sesuai kondisi tertentu.
  • ORDER BY Klausa: Menentukan apakah Anda ingin hasil Anda dalam urutan naik atau turun.

Contoh Praktis

1. Kueri Dasar

Dari tabel karyawan. Anda melakukan ini untuk mengambil semua data dari tabel karyawan:

SELECT * FROM employees;

2. Memfilter Data

Untuk mengambil karyawan yang memiliki gaji lebih dari $50.000:

SELECT name, salary

FROM employees

WHERE salary > 50000;

3. Menyortir Hasil

Untuk mengurutkan karyawan berdasarkan tanggal perekrutan secara menurun:

SELECT name, hire_date

FROM employees

ORDER BY hire_date DESC;

4. Mengelompokkan Data

Misalnya, untuk menghitung gaji rata-rata di sebuah perusahaan:

SELECT AVG(salary) AS average_salary

FROM employees;

5. Menggunakan Gabungan

Gabungan adalah kunci untuk mengambil data dari beberapa tabel. Misalnya, mengambil daftar karyawan dengan nama departemen mereka:

SELECT employees.name, departments.department_name

FROM employees

INNER JOIN departments ON employees.department_id = departments.id;

Teknik Pengambilan Data Tingkat Lanjut

Mengelompokkan Data dengan GROUP BY

Mengelompokkan data berdasarkan atribut umum dan menerapkan fungsi agregat seperti SUM, COUNT, atau MAX. Sebagai contoh:

SELECT department_id, COUNT(*) AS employee_count

FROM employees

GROUP BY department_id;

Subkueri

Sub-kueri adalah kueri yang berada di dalam kueri lain. Sub-kueri membantu dalam membagi persyaratan yang lebih besar menjadi persyaratan yang lebih kecil. Yaitu, untuk menemukan karyawan yang menghasilkan lebih dari gaji rata-rata perusahaan:

SELECT name, salary

FROM employees

WHERE salary > (SELECT AVG(salary) FROM employees);

Fungsi Jendela

Fungsi jendela harus melakukan perhitungan di seluruh kumpulan baris yang berasal dari baris saat ini. Misalnya, untuk menentukan jumlah kumulatif gaji:

SELECT name, salary, SUM(salary) OVER (ORDER BY hire_date) AS running_total

FROM employees;

Mengoptimalkan Kueri SQL

Pengambilan data yang efisien membutuhkan kueri yang dioptimalkan dengan baik. Berikut adalah beberapa tips:

  1. Pengindeksan: Buat indeks pada kolom yang sering ditanyakan.
  2. **Hindari SELECT ***: Tentukan hanya kolom yang diperlukan untuk mengurangi transfer data.
  3. Gunakan Penggabungan yang Tepat: Pilih jenis gabungan yang tepat untuk meminimalkan overhead komputasi.
  4. Menganalisis Rencana Eksekusi: Alat-alat seperti EXPLAIN di MySQL atau EXPLAIN PLAN di Oracle membantu mengidentifikasi kemacetan kinerja. 

Kesimpulan

Kueri SQL sangat diperlukan untuk mengekstrak informasi berharga dari database. Menguasai sintaks SQL, memahami klausa-klausanya, dan memanfaatkan teknik-teknik canggih seperti penggabungan dan fungsi-fungsi jendela dapat secara signifikan meningkatkan kemampuan Anda untuk memanipulasi data. Karena data terus bertambah penting, SQL tetap menjadi alat penting bagi para profesional yang ingin mendapatkan wawasan yang dapat ditindaklanjuti dari kumpulan data mereka.