Joining two tables
To use data from both tables at once, you join them. An INNER JOIN pairs up rows that match on a key — here, the order's customer_id with the customer's id:
When a column name could come from either table, write table.column so it is clear.
Menggabungkan dua tabel
Untuk menggunakan data dari kedua tabel sekaligus, Anda menggabungkan mereka. Sebuah INNER JOIN memasangkan baris yang cocok pada kunci — di sini, customer_id pesanan dengan id pelanggan:
SELECT customer.name, orders.total
FROM customer
INNER JOIN orders ON customer.id = orders.customer_id;
Ketika nama kolom bisa berasal dari kedua tabel, tuliskan table.column agar jelas.
Only matching rows survive
An INNER JOIN keeps a row only when the ON condition finds a match in the other table.
In our shop, Ben and Dan have no orders, so they do not appear in the join — there is nothing to pair them with. Ada and Cara, who do have orders, appear once for each of their orders.
Hanya baris yang cocok yang tersisa
Sebuah INNER JOIN menyimpan baris hanya jika kondisi ON menemukan kecocokan di tabel lain.
Di toko kami, Ben dan Dan tidak memiliki pesanan, jadi mereka tidak muncul dalam penggabungan — tidak ada yang dapat dipasangkan dengan mereka. Ada dan Cara, yang memiliki pesanan, muncul sekali untuk setiap pesanan mereka.
Common mistakes
- Match on the key with
ON; a missingONpairs every row with every row. - INNER JOIN drops rows with no match on the other side.
Kesalahan Umum
- Cocokkan berdasarkan kunci dengan
ON; ketiadaanONakan memasangkan setiap baris dengan setiap baris lainnya. - INNER JOIN membuang baris yang tidak memiliki kecocokan di sisi lainnya.
INNER JOIN matches keys · INNER JOIN mencocokkan kunci
Rows from two tables combine where the key matches. · Baris dari dua tabel digabungkan di mana kuncinya cocok.
List each customer's name next to the total of each of their orders. Join customer to orders on the key, ordered by orders.id. · Daftarkan setiap pelanggan name berdampingan dengan total dari setiap pesannya. Gabungkan customer ke orders pada kunci, diurutkan menurut orders.id.
Click Run to see the output here. · Klik Jalankan untuk melihat output di sini.
Show the customer name and order total for orders of 25 or more, largest total first. · Tampilkan customer name dan order total untuk orders of 25 atau lebih, total terbesar pertama.
Click Run to see the output here. · Klik Jalankan untuk melihat output di sini.