Hari 5: Dasar-Dasar SQL: Query, SELECT, WHERE

Tutorial SQL dasar: query data dengan SELECT, WHERE, ORDER BY. Praktik dengan database sampel! Kuasai bahasa basis data untuk analisis data.

Keywords: sql dasar, belajar sql, select sql, where sql, query sql

Dari Python ke Database – Mengapa SQL Menjadi Keterampilan Wajib?

Di Hari 1 hingga hari 4, kita telah mempelajari fondasi Python untuk analisis data, mulai dari variabel dasar hingga kontrol alur yang kompleks. Namun, dalam dunia nyata, data perusahaan jarang disimpan dalam file CSV atau Excel sederhana. Sebagian besar data bisnis disimpan dalam database relasional yang memerlukan bahasa khusus untuk mengaksesnya.

Bayangkan Anda bekerja di perusahaan e-commerce dengan jutaan transaksi pelanggan. Menggunakan Python untuk memproses semua data ini secara langsung akan sangat tidak efisien. Di sinilah SQL (Structured Query Language) menjadi krusial – bahasa khusus yang dirancang untuk berkomunikasi dengan database dan mengambil data dengan tepat dan cepat.

SQL adalah bahasa basis data. Kuasai SELECT dan WHERE di Hari 5!

Setiap data analyst profesional harus menguasai SQL – bahasa universal untuk mengelola dan mengambil data dari database. Hari ini, kita akan mempelajari fondasi SQL yang akan membuka pintu Anda ke dunia data perusahaan. Dengan menguasai perintah dasar seperti SELECT, WHERE, dan ORDER BY, Anda akan dapat mengekstrak informasi berharga dari database yang besar dan kompleks. Ini adalah keterampilan yang akan membedakan Anda dari analis data lainnya!

Apa Itu SQL dan Mengapa Penting untuk Data Analyst?

SQL (dibaca “sequel”) adalah bahasa pemrograman khusus yang digunakan untuk mengelola dan memanipulasi data dalam sistem manajemen basis data relasional (RDBMS) seperti MySQL, PostgreSQL, SQL Server, dan Oracle.

Mengapa SQL Wajib Dikuasai?

  1. Standar Industri: Hampir semua perusahaan menggunakan database relasional untuk menyimpan data
  2. Efisiensi: SQL dirancang khusus untuk operasi data, lebih cepat daripada Python untuk query besar
  3. Integrasi: Banyak tools analisis data (Tableau, Power BI) terintegrasi dengan SQL
  4. Skalabilitas: Dapat menangani dataset yang sangat besar (terabyte bahkan petabyte)
  5. Pekerjaan: Lowongan data analyst hampir selalu mensyaratkan kemampuan SQL

Komponen Utama SQL

SQL terdiri dari beberapa bagian, tetapi untuk data analyst, kita fokus pada:

  • DQL (Data Query Language): Mengambil data (SELECT)
  • DML (Data Manipulation Language): Memodifikasi data (INSERT, UPDATE, DELETE)
  • DDL (Data Definition Language): Mendefinisikan struktur database (CREATE, ALTER)

Hari ini kita fokus pada DQL, khususnya perintah SELECT yang paling sering digunakan.

Perintah SELECT: Dasar Pengambilan Data

Perintah SELECT adalah jantung dari SQL. Digunakan untuk mengambil data dari satu atau lebih tabel dalam database.

Sintaks Dasar SELECT

SELECT column1, column2, ...
FROM table_name;

Mengambil Semua Kolom

Untuk mengambil semua kolom dari tabel, gunakan asterisk (*):

SELECT * FROM pelanggan;

Mengambil Kolom Spesifik

Lebih baik memilih kolom spesifik untuk performa yang lebih baik:

SELECT nama, email, telepon FROM pelanggan;

Klausa WHERE: Memfilter Data dengan Kondisi

Klausa WHERE digunakan untuk menyaring record berdasarkan kondisi tertentu. Ini seperti pernyataan IF dalam Python, tetapi untuk database.

Sintaks Dasar WHERE

SELECT column1, column2, ...
FROM table_name
WHERE condition;

Operator dalam WHERE

SQL mendukung berbagai operator untuk kondisi:

  • =: Sama dengan
  • != atau <>: Tidak sama dengan
  • >: Lebih besar dari
  • <: Lebih kecil dari
  • >=: Lebih besar atau sama dengan
  • <=: Lebih kecil atau sama dengan
  • BETWEEN: Antara nilai tertentu
  • LIKE: Pencocokan pola
  • IN: Salah satu dari beberapa nilai

Contoh Penggunaan WHERE

-- Pelanggan dengan usia di atas 25 tahun
SELECT nama, usia FROM pelanggan WHERE usia > 25;

-- Pelanggan dari kota Jakarta
SELECT nama, kota FROM pelanggan WHERE kota = 'Jakarta';

-- Pelanggan dengan usia antara 20 dan 30 tahun
SELECT nama, usia FROM pelanggan WHERE usia BETWEEN 20 AND 30;

-- Pelanggan dengan nama yang mengandung 'ani'
SELECT nama, email FROM pelanggan WHERE nama LIKE '%ani%';

Mengurutkan Hasil dengan ORDER BY

Klausa ORDER BY digunakan untuk mengurutkan hasil query berdasarkan satu atau lebih kolom.

Sintaks Dasar ORDER BY

SELECT column1, column2, ...
FROM table_name
ORDER BY column1 [ASC|DESC];

Pengurutan Ascending dan Descending

  • ASC: Ascending (naik) – default
  • DESC: Descending (turun)

Contoh ORDER BY

-- Pelanggan diurutkan berdasarkan usia (termuda ke tertua)
SELECT nama, usia FROM pelanggan ORDER BY usia ASC;

-- Pelanggan diurutkan berdasarkan nama (Z ke A)
SELECT nama, kota FROM pelanggan ORDER BY nama DESC;

-- Urutkan berdasarkan kota, lalu nama
SELECT nama, kota FROM pelanggan ORDER BY kota, nama;

Membatasi Hasil dengan LIMIT

Klausa LIMIT digunakan untuk membatasi jumlah record yang dikembalikan oleh query. Sangat berguna untuk:

  • Melihat sampel data
  • Mencegah pengambilan data terlalu banyak
  • Membuat pagination di aplikasi

Sintaks Dasar LIMIT

SELECT column1, column2, ...
FROM table_name
LIMIT number;

Contoh LIMIT

-- 10 pelanggan pertama
SELECT * FROM pelanggan LIMIT 10;

-- Pelanggan dengan usia tertinggi (hanya 5 record)
SELECT nama, usia FROM pelanggan ORDER BY usia DESC LIMIT 5;

Studi Kasus: Mengambil Data Pelanggan dari Database

Mari kita terapkan pengetahuan kita dalam skenario nyata: mengambil data pelanggan dari database e-commerce.

Kasus: Sebuah perusahaan e-commerce ingin menganalisis pelanggan mereka. Kita perlu mengambil:

  1. Nama, email, dan usia pelanggan yang berusia di atas 25 tahun
  2. Pelanggan yang berasal dari Jakarta atau Surabaya
  3. Diurutkan berdasarkan usia (tertua ke termuda)
  4. Hanya 20 record pertama

Asumsikan kita memiliki tabel pelanggan dengan struktur:

  • id (integer)
  • nama (varchar)
  • email (varchar)
  • usia (integer)
  • kota (varchar)
  • tanggal_daftar (date)
SELECT nama, email, usia, kota
FROM pelanggan
WHERE usia > 25 
  AND (kota = 'Jakarta' OR kota = 'Surabaya')
ORDER BY usia DESC
LIMIT 20;

Penjelasan Query:

  1. SELECT nama, email, usia, kota: Memilih kolom yang diperlukan
  2. FROM pelanggan: Mengambil data dari tabel pelanggan
  3. WHERE usia > 25 AND (kota = 'Jakarta' OR kota = 'Surabaya'): Filter untuk pelanggan di atas 25 tahun dari Jakarta atau Surabaya
  4. ORDER BY usia DESC: Mengurutkan dari usia tertua
  5. LIMIT 20: Membatasi hasil hanya 20 record

Contoh Praktik: Query di SQLFiddle

SQLFiddle adalah tool online yang memungkinkan Anda berlatih SQL tanpa menginstal database. Mari kita coba query sederhana:

  1. Buka sqlfiddle.com
  2. Pilih database (misal MySQL 5.6)
  3. Di panel kiri (Schema), buat tabel:
CREATE TABLE pelanggan (
  id INT PRIMARY KEY,
  nama VARCHAR(100),
  email VARCHAR(100),
  usia INT,
  kota VARCHAR(50)
);

INSERT INTO pelanggan VALUES
(1, 'Ahmad Fauzi', 'ahmad@email.com', 28, 'Jakarta'),
(2, 'Siti Nurhaliza', 'siti@email.com', 24, 'Surabaya'),
(3, 'Budi Santoso', 'budi@email.com', 32, 'Jakarta'),
(4, 'Dewi Lestari', 'dewi@email.com', 26, 'Bandung'),
(5, 'Eko Prasetyo', 'eko@email.com', 29, 'Surabaya');

4. Di panel kanan, jalankan query:

SELECT nama, email, usia, kota
FROM pelanggan
WHERE usia > 25
ORDER BY usia DESC;

Hasilnya akan menampilkan pelanggan dengan usia di atas 25 tahun, diurutkan dari yang tertua.

Kesimpulan

Hari ini kita telah mempelajari fondasi SQL yang sangat penting untuk setiap data analyst:

  1. SELECT: Perintah dasar untuk mengambil data dari database
  2. WHERE: Klausa krusial untuk menyaring data berdasarkan kondisi
  3. ORDER BY: Cara mengurutkan hasil query
  4. LIMIT: Membatasi jumlah record yang dikembalikan

SQL adalah bahasa wajib untuk mengakses data dari database – tempat sebagian besar data perusahaan disimpan. Tanpa kemampuan SQL, Anda akan kesulitan mendapatkan data yang diperlukan untuk analisis.

Dengan menguasai perintah-perintah dasar ini, Anda sudah dapat melakukan 80% tugas pengambilan data yang umum dibutuhkan dalam analisis bisnis. Di hari-hari berikutnya, kita akan mempelajari SQL yang lebih canggih seperti JOIN, GROUP BY, dan subquery yang akan memperluas kemampuan analisis Anda.

Praktik query di SQLFiddle. Share hasil Anda di kolom komentar! Coba variasi seperti menggabungkan beberapa kondisi di WHERE atau mengurutkan berdasarkan beberapa kolom. Di Hari 6, kita akan kembali ke Excel untuk mempelajari formula dan Pivot Table – alat penting lainnya untuk data analyst. Tetap semangat belajar!

#SQL #Database #Pemula #SQL #DataAnalisis #BelajarData

Leave a Comment