Menu
CoddyTech

Join Dasar Bagian 1

Termasuk bagian Dasar-Dasar dalam perjalanan SQL di Coddy. Pelajaran 43 dari 72.

Sampai saat ini, kita telah menyelesaikan masalah yang melibatkan satu tabel. Sekarang kita akan mempelajari cara menangani beberapa tabel.

Misalkan kita memiliki tabel berikut:

kursus

course_idlecturer_id
11
21
32

lecturers

lecturer_idname
1Jhonas
2Malidos

Tugasnya adalah menampilkan setiap kursus beserta nama dosen yang bersangkutan.

Ada dua cara untuk mencapai ini. Untuk setiap opsi, kita mencocokkan setiap baris dalam satu tabel dengan tabel lainnya. Kita memeriksa kondisi yang harus terpenuhi, dan jika kondisi tersebut terpenuhi, kita menggabungkan kedua baris menjadi satu. Hasil yang diinginkan untuk kedua opsi:

course_idlecturer_name
1Jhonas
2Jhonas
3Malidos

Opsi 1:

SELECT courses.course_id, lecturers.name AS lecturer_name
FROM courses, lecturers
WHERE courses.lecturer_id = lecturers.lecturer_id

Di sini kita menuliskan dua tabel pada kata kunci FROM, lalu pada klausa WHERE kita meminta agar lecturer_id pada kedua catatan memiliki nilai yang sama. Pada klausa SELECT, kini kita menuliskan table.column agar database mengetahui dari mana mengambil kolom tersebut.

Opsi 2:

SELECT courses.course_id, lecturers.name AS lecturer_name
FROM courses
JOIN lecturers ON courses.lecturer_id = lecturers.lecturer_id

Alih-alih menggunakan WHERE, kita menggunakan JOIN table ON condition

Kedua opsi memberikan hasil yang sama dan disebut inner join: hanya pasangan baris yang memenuhi kondisi yang digabungkan.

challenge icon

Tantangan

Mudah

Tabel dan kolom yang tersedia:

  • grades: course_id, student_id, grade
  • students: id, name

Buat query yang mengambil student_name, course_id, student_id, dan grade dalam satu tabel. Urutkan hasil berdasarkan grade secara menaik.

Coba sendiri

-- Cantumkan kolom yang diminta tugas, gunakan alias yang diminta
SELECT ____
FROM students, grades
-- Pertahankan hanya pasangan baris dari kedua tabel yang merujuk pada orang yang sama
WHERE ____
ORDER BY grade
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground SQL