🔰 TUJUAN LATIHAN
Peserta mampu:
- Membuat database & tabel
- Menginput data (INSERT)
- Melakukan query analisis (SELECT, WHERE, GROUP BY, JOIN)
- Menyiapkan data untuk Excel / Pivot / Dashboard
🧱 STEP 1 — MEMBUAT DATABASE
CREATE DATABASE db_penjualan;
Gunakan database:
USE db_penjualan;
🧱 STEP 2 — MEMBUAT TABEL
1️⃣ Tabel pelanggan
CREATE TABLE pelanggan (
id_pelanggan INT AUTO_INCREMENT PRIMARY KEY,
nama_pelanggan VARCHAR(100),
kota VARCHAR(50)
);
2️⃣ Tabel produk
CREATE TABLE produk (
id_produk INT AUTO_INCREMENT PRIMARY KEY,
nama_produk VARCHAR(100),
kategori VARCHAR(50),
harga INT
);
3️⃣ Tabel penjualan
CREATE TABLE penjualan (
id_penjualan INT AUTO_INCREMENT PRIMARY KEY,
tanggal DATE,
id_pelanggan INT,
id_produk INT,
jumlah INT
);
🧱 STEP 3 — INPUT DATA (INSERT)
Data pelanggan
INSERT INTO pelanggan (nama_pelanggan, kota) VALUES
('Andi', 'Jakarta'),
('Budi', 'Bogor'),
('Citra', 'Depok'),
('Dewi', 'Bekasi');
Data produk
INSERT INTO produk (nama_produk, kategori, harga) VALUES
('Ayam Fillet', 'Frozen Food', 35000),
('Ayam Utuh', 'Frozen Food', 32000),
('Nugget Ayam', 'Olahan', 28000);
Data penjualan
INSERT INTO penjualan (tanggal, id_pelanggan, id_produk, jumlah) VALUES
('2025-01-01', 1, 1, 2),
('2025-01-01', 2, 2, 1),
('2025-01-02', 3, 3, 3),
('2025-01-03', 1, 2, 2),
('2025-01-03', 4, 1, 1);
🔍 STEP 4 — QUERY DASAR (DATA ANALIS WAJIB KUASAI)
1️⃣ Menampilkan semua data
SELECT * FROM pelanggan;
SELECT * FROM produk;
SELECT * FROM penjualan;
2️⃣ Filter data (WHERE)
SELECT * FROM produk
WHERE kategori = 'Frozen Food';
SELECT * FROM penjualan
WHERE tanggal = '2025-01-01';
3️⃣ Hitung nilai transaksi (SELECT + HITUNG)
SELECT
p.id_penjualan,
pr.nama_produk,
p.jumlah,
pr.harga,
(p.jumlah * pr.harga) AS total_harga
FROM penjualan p
JOIN produk pr ON p.id_produk = pr.id_produk;
📊 STEP 5 — AGREGASI DATA (KHUSUS ANALIS)
Total penjualan per produk
SELECT
pr.nama_produk,
SUM(p.jumlah) AS total_qty
FROM penjualan p
JOIN produk pr ON p.id_produk = pr.id_produk
GROUP BY pr.nama_produk;
Total omzet
SELECT
SUM(p.jumlah * pr.harga) AS total_omzet
FROM penjualan p
JOIN produk pr ON p.id_produk = pr.id_produk;
Omzet per tanggal
SELECT
p.tanggal,
SUM(p.jumlah * pr.harga) AS omzet_harian
FROM penjualan p
JOIN produk pr ON p.id_produk = pr.id_produk
GROUP BY p.tanggal;
🔗 STEP 6 — JOIN (INTI DATA ANALIS)
SELECT
p.tanggal,
pl.nama_pelanggan,
pl.kota,
pr.nama_produk,
pr.kategori,
p.jumlah,
(p.jumlah * pr.harga) AS total
FROM penjualan p
JOIN pelanggan pl ON p.id_pelanggan = pl.id_pelanggan
JOIN produk pr ON p.id_produk = pr.id_produk;