Pertemuan 3: SQL CRUD dan JOIN (Database Perpustakaan)

🎯 Tujuan Pembelajaran

  • Memahami cara melakukan operasi dasar (Create, Read, Update, Delete) pada SQL Server.
  • Memahami dan mempraktikkan penggunaan JOIN untuk menggabungkan tabel.
  • Menghubungkan tabel menggunakan relasi kunci primer dan kunci asing.

🧠 Konsep Dasar CRUD

CRUD adalah singkatan dari:

  • C (Create) β†’ menambahkan data baru ke tabel.
  • R (Read) β†’ membaca atau menampilkan data dari tabel.
  • U (Update) β†’ mengubah data yang sudah ada.
  • D (Delete) β†’ menghapus data dari tabel.

Kita akan bekerja dengan database sederhana bernama Perpustakaan.

Struktur Tabel

Tabel anggota

KolomTipe DataKeterangan
id_anggotaINTPrimary Key
namaVARCHAR(100)Nama anggota
alamatVARCHAR(200)Alamat anggota

Tabel buku

KolomTipe DataKeterangan
id_bukuINTPrimary Key
judulVARCHAR(100)Judul buku
penulisVARCHAR(100)Nama penulis

Tabel peminjaman

KolomTipe DataKeterangan
id_peminjamanINTPrimary Key
id_anggotaINTForeign Key β†’ anggota
id_bukuINTForeign Key β†’ buku
tanggal_pinjamDATETanggal peminjaman

βš™οΈ Operasi CRUD Dasar

1️⃣ CREATE (Menambahkan Data)

1
2
INSERT INTO anggota (id_anggota, nama, alamat)
VALUES (3, 'Dewi', 'Surabaya');

2️⃣ READ (Menampilkan Data)

1
SELECT * FROM anggota;

3️⃣ UPDATE (Mengubah Data)

1
2
3
UPDATE anggota
SET alamat = 'Yogyakarta'
WHERE id_anggota = 1;

4️⃣ DELETE (Menghapus Data)

1
2
DELETE FROM anggota
WHERE id_anggota = 3;

πŸ”— JOIN dalam SQL

JOIN digunakan untuk menggabungkan data dari dua atau lebih tabel yang saling berhubungan.

Jenis-jenis JOIN:

Jenis JOIN Fungsi Utama
INNER JOIN Menampilkan hanya data yang cocok di kedua tabel
LEFT JOIN Menampilkan semua data dari tabel kiri + data cocok dari kanan
RIGHT JOIN Menampilkan semua data dari tabel kanan + data cocok dari kiri
FULL JOIN Menampilkan semua data dari kedua tabel, cocok atau tidak
CROSS JOIN Menggabungkan semua baris dari kedua tabel (kombinasi semua pasangan)

🧩 Contoh INNER JOIN

Menampilkan nama anggota dan judul buku yang dipinjam.

1
2
3
4
SELECT a.nama, b.judul
FROM peminjaman p
INNER JOIN anggota a ON p.id_anggota = a.id_anggota
INNER JOIN buku b ON p.id_buku = b.id_buku;


πŸ’» Latihan Siswa (Wajib Dikerjakan)

🧠 Bagian 1 β€” Dasar CRUD

  1. Buat database Perpustakaan.
  2. Buat tabel anggota, buku, dan peminjaman dengan struktur di atas.
  3. Masukkan minimal 5 data anggota, 5 data buku, dan 5 data peminjaman.
  4. Tampilkan seluruh data anggota yang alamatnya mengandung kata β€œJakarta”.
  5. Ubah alamat salah satu anggota.
  6. Hapus satu data anggota.
  7. Tambahkan satu data buku baru ke tabel buku.

πŸ”— Bagian 2 β€” Latihan JOIN

  1. Tampilkan nama anggota dan judul buku yang dipinjam menggunakan INNER JOIN.
  2. Tampilkan semua anggota, meskipun belum pernah meminjam (LEFT JOIN).
  3. Tampilkan semua buku termasuk yang belum dipinjam (RIGHT JOIN).
  4. Gabungkan semua anggota dan buku (pakai CROSS JOIN).
  5. Buat query untuk menampilkan tanggal pinjam, nama anggota, dan penulis buku.

πŸš€ Bagian 3 β€” Tantangan Tambahan

  1. Buat query untuk menampilkan jumlah buku yang dipinjam setiap anggota.
  2. Tampilkan daftar buku yang belum pernah dipinjam.
  3. Buat laporan yang menampilkan total peminjaman per bulan.
  4. Buat view bernama v_PeminjamanLengkap yang menggabungkan semua data anggota, buku, dan peminjaman.
  5. Buat query gabungan antara JOIN dan WHERE untuk menampilkan data anggota dari Bandung yang meminjam buku karya Andi.
  6. Tambahan: buat query untuk menampilkan 5 anggota yang paling sering meminjam buku.
  7. Buat query yang menampilkan judul buku dan jumlah total dipinjam (gunakan GROUP BY).

πŸ“€ Kumpulkan hasil query dalam file .sql bernama:
Pertemuan3_NamaKamu.sql

πŸ•’ Estimasi waktu pengerjaan: Β±2,5 jam
🧩 Durasi penjelasan teori: ±30 menit


🧭 Refleksi

Setelah pertemuan ini, kamu sudah bisa:

  • Mengelola data dalam tabel menggunakan perintah CRUD.
  • Menggabungkan data dari berbagai tabel dengan JOIN.
  • Membuat query laporan sederhana untuk kasus nyata.