SQL SQL Joins & Relational Medium

SQL 03. Relasi Data Pesanan & Pelanggan (INNER JOIN) SQL 03. Orders & Customers Relation (INNER JOIN)

Gabungkan data transaksi pesanan dengan tabel pelanggan menggunakan INNER JOIN. Join orders and customers relational tables via INNER JOIN.

Contoh Logika Serupa: Relasi Mahasiswa & Jurusan Similar Pattern Example: Student & Department Join

Referensi Kode

Menghubungkan dua tabel dengan foreign key, memilih kolom dari kedua tabel, dan mengurutkan hasilnya: Joining two tables on foreign keys with column selection and ordering:

-- Contoh menggabungkan tabel students (s) dan departments (d)
SELECT s.nim, s.student_name, d.department_name, s.gpa
FROM students s
INNER JOIN departments d ON s.department_id = d.id
WHERE s.status = 'ACTIVE'
ORDER BY s.gpa DESC;

Langkah & Spesifikasi Tugas Step-by-Step Requirements

Contoh Kasus & Ketentuan Example Cases & Rules

Database Schema Setup

In-Memory SQLite
CREATE TABLE customers (id INT PRIMARY KEY, customer_name VARCHAR(100), city VARCHAR(50));
CREATE TABLE orders (id INT PRIMARY KEY, customer_id INT, order_number VARCHAR(50), amount INT, status VARCHAR(20));
INSERT INTO customers VALUES (1, 'Bagas Praditya', 'Jakarta'), (2, 'Dewi Sartika', 'Bandung'), (3, 'Rian Hidayat', 'Surabaya');
INSERT INTO orders VALUES (101, 1, 'ORD-2026-001', 750000, 'PAID'), (102, 2, 'ORD-2026-002', 300000, 'PENDING'), (103, 1, 'ORD-2026-003', 1200000, 'PAID'), (104, 3, 'ORD-2026-004', 450000, 'PAID');

Target Output (Expected) Expected Output

[
    {
        "order_number": "ORD-2026-003",
        "customer_name": "Bagas Praditya",
        "amount": 1200000,
        "status": "PAID"
    },
    {
        "order_number": "ORD-2026-001",
        "customer_name": "Bagas Praditya",
        "amount": 750000,
        "status": "PAID"
    },
    {
        "order_number": "ORD-2026-004",
        "customer_name": "Rian Hidayat",
        "amount": 450000,
        "status": "PAID"
    }
]
Petunjuk Pengerjaan:
  • Gunakan alias tabel: `FROM orders o INNER JOIN customers c ON o.customer_id = c.id`.
  • Klausa `WHERE o.status = 'PAID'` ditulis setelah perintah JOIN.
  • Tambahkan `ORDER BY o.amount DESC`.
SELECT o.order_number, c.customer_name, o.amount, o.status FROM orders o INNER JOIN customers c ON o.customer_id = c.id WHERE o.status = 'PAID' ORDER BY o.amount DESC;
query.sql
✨ Kode dirapikan!

Login Diperlukan

Masuk dengan akun Google untuk mengeksekusi kodingan & query sandbox di server secara interaktif.