TOOLS JALAN · SQL + EXCEL
SQL Playground + Excel Generator
Alurnya: lihat data → bangun query → jalankan → lulus 3 latihan → download CSV buat Excel. Query-nya dieksekusi beneran di browser, bukan simulasi teks.
Lulus 0/10 latihan · dataset contoh: 20 order + 8 customer (1 order customer_id 9 = yatim, buat latihan LEFT JOIN).
LANGKAH 1 · DATA CONTOH
CUSTOMERS (8)
| id | nama | kota |
|---|---|---|
| 1 | Budi Mart | Jakarta |
| 2 | Sari Store | Bandung |
| 3 | Toko Maju | Jakarta |
| 4 | Rina Shop | Surabaya |
| 5 | Jaya Abadi | Medan |
| 6 | Kios Berkah | Bandung |
| 7 | Mitra Niaga | Jakarta |
| 8 | Toko Hoki | Yogyakarta |
8 baris.
ORDERS (20)
| order_id | customer_id | tanggal | nominal |
|---|---|---|---|
| O-101 | 1 | 2026-09-02 | 1.300.000 |
| O-102 | 2 | 2026-09-03 | 450.000 |
| O-103 | 1 | 2026-09-05 | 2.750.000 |
| O-104 | 3 | 2026-09-06 | 800.000 |
| O-105 | 4 | 2026-09-08 | 1.500.000 |
| O-106 | 2 | 2026-09-09 | 2.200.000 |
| O-107 | 5 | 2026-09-10 | 600.000 |
| O-108 | 3 | 2026-09-12 | 3.100.000 |
| O-109 | 6 | 2026-09-13 | 950.000 |
| O-110 | 1 | 2026-09-14 | 1.800.000 |
| O-111 | 7 | 2026-09-15 | 4.200.000 |
| O-112 | 4 | 2026-09-16 | 700.000 |
| O-113 | 8 | 2026-09-18 | 1.100.000 |
| O-114 | 2 | 2026-09-19 | 5.300.000 |
| O-115 | 5 | 2026-09-20 | 2.400.000 |
| O-116 | 9 | 2026-09-21 | 900.000 |
| O-117 | 6 | 2026-09-22 | 1.750.000 |
| O-118 | 7 | 2026-09-24 | 2.600.000 |
| O-119 | 3 | 2026-09-25 | 480.000 |
| O-120 | 8 | 2026-09-27 | 3.300.000 |
20 baris.
LANGKAH 2 · BANGUN QUERY → JALANKAN
KOLOM (SELECT)
JOIN
WHERE
GROUP BY + AGREGASI
SQL YANG DIJALANKAN
SELECT c.nama, o.nominal, o.tanggal FROM orders o INNER JOIN customers c ON c.id = o.customer_id LIMIT 20;
| nama | nominal | tanggal |
|---|---|---|
| Budi Mart | 1.300.000 | 2026-09-02 |
| Sari Store | 450.000 | 2026-09-03 |
| Budi Mart | 2.750.000 | 2026-09-05 |
| Toko Maju | 800.000 | 2026-09-06 |
| Rina Shop | 1.500.000 | 2026-09-08 |
| Sari Store | 2.200.000 | 2026-09-09 |
| Jaya Abadi | 600.000 | 2026-09-10 |
| Toko Maju | 3.100.000 | 2026-09-12 |
| Kios Berkah | 950.000 | 2026-09-13 |
| Budi Mart | 1.800.000 | 2026-09-14 |
| Mitra Niaga | 4.200.000 | 2026-09-15 |
| Rina Shop | 700.000 | 2026-09-16 |
| Toko Hoki | 1.100.000 | 2026-09-18 |
| Sari Store | 5.300.000 | 2026-09-19 |
| Jaya Abadi | 2.400.000 | 2026-09-20 |
| Kios Berkah | 1.750.000 | 2026-09-22 |
| Mitra Niaga | 2.600.000 | 2026-09-24 |
| Toko Maju | 480.000 | 2026-09-25 |
| Toko Hoki | 3.300.000 | 2026-09-27 |
19 baris.
LANGKAH 3 · 10 LATIHAN DINILAI
Atur builder di Langkah 2 sampai hasilnya benar, lalu klik Cek per soal.
Butuh: JOIN inner, GROUP BY nama, SUM, ORDER DESC, LIMIT 5.
Butuh: JOIN inner, WHERE nominal > 2000000, kolom nama/nominal/tanggal.
Butuh: JOIN inner, GROUP BY kota, COUNT, ORDER DESC.
Butuh: WHERE tanggal < 2026-09-10. Tanpa JOIN juga bisa.
Butuh: LEFT JOIN. Hasilnya 20 baris, 1 baris namanya NULL.
Butuh: JOIN inner, GROUP BY kota, AVG, ORDER DESC.
Butuh: JOIN inner, WHERE kota = Bandung.
Butuh: ORDER terkecil dulu, LIMIT 3.
Butuh: SUM, tanpa group. Hasilnya 1 baris.
Butuh: WHERE tanggal = 2026-09-19. Cuma 1 baris.
LANGKAH 4 · GENERATE EXCEL OTOMATIS (CSV)
CSV kebuka langsung di Excel/Sheets. Dataset diacak pakai seed tetap biar bisa diulang.
Lanjut: task JOIN · task 30 test case · contoh jawaban JOIN ·