Menggabungkan tabel dan kueri

Menggabungkan tabel dan kueri

Catatan: Kami ingin secepatnya menyediakan konten bantuan terbaru dalam bahasa Anda. Halaman ini diterjemahkan menggunakan mesin dan mungkin terdapat kesalahan tata bahasa atau masalah keakuratan. Kami bertujuan menyediakan konten yang bermanfaat untuk Anda. Dapatkah Anda memberi tahu kami apakah informasi ini bermanfaat untuk Anda di bagian bawah halaman ini? Berikut artikel dalam bahasa Inggris untuk referensi.

Saat Anda menyertakan beberapa sumber data dalam kueri Access, Anda menggunakan gabungan untuk membatasi catatan yang ingin Anda lihat, berdasarkan bagaimana sumber data terkait ke masing-masing. Anda juga menggunakan gabungan untuk menggabungkan data dari sumber data kedua, sehingga tiap pasangan data dari sumber menjadi satu catatan dalam hasil kueri.

Artikel ini membahas berbagai tipe gabungan dan memperlihatkan kepada Anda cara menggunakannya dalam kueri. Secara default, gabungan dibuat secara otomatis jika sudah ada hubungan antara dua sumber data yang Anda gunakan dalam kueri. Gabungan juga dibuat jika terdapat bidang yang jelas sesuai dengan satu sama lain. Anda bisa menghapus menjadi gabungan secara otomatis dibuat. Artikel ini menyediakan informasi dasar tentang hubungan tabel, termasuk cara membuatnya.

Catatan: Anda bisa ikut kueri dengan cara yang sama seperti yang Anda gabungkan tabel-tabel, dan juga bisa bergabung keduanya.

Dalam artikel ini

Gambaran Umum

Tipe gabungan

Memperlihatkan baris di mana nilai yang sama ada di kedua tabel yang digabungkan

Memperlihatkan semua baris dari satu tabel, dan baris yang berkaitan dari tabel lainnya

Memperlihatkan semua baris dari kedua tabel, dan bergabunglah dengan mereka di mana nilai yang sama ada

Gabungan silang

Menggabungkan tabel berdasarkan ketidaksamaan nilai-nilai bidang

Menghapus gabungan

Gambaran Umum

Database adalah kumpulan tabel data yang menanggung logika hubungan untuk satu sama lain. Anda menggunakan hubungan menyambungkan tabel dengan bidang yang mereka yang sama. Tabel bisa menjadi bagian dari angka hubungan, tapi hubungan setiap selalu memiliki persis dua tabel. Dalam kueri, hubungan diwakili oleh gabungan.

Ketika Anda menambahkan tabel ke kueri, Access membuat gabungan yang berdasarkan pada hubungan yang telah ditentukan antara tabel. Anda bisa secara manual membuat gabungan dalam kueri, bahkan jika mereka tidak mewakili hubungan yang telah ditetapkan. Jika Anda menggunakan kueri lain (daripada atau Selain tabel) sebagai sumber data untuk kueri, Anda bisa membuat gabungan antara kueri sumber, dan juga antara kueri tersebut dan tabel mana pun yang Anda gunakan sebagai sumber data.

Gabungan berperilaku demikian pula untuk kriteria kueri di bahwa mereka menetapkan aturan yang data harus sesuai dengan yang akan disertakan dalam operasi kueri. Tidak seperti kriteria, gabungan juga menentukan bahwa tiap pasangan baris yang memenuhi kondisi gabungan akan digabungkan di set rekaman untuk membentuk satu baris.

Ada empat tipe dasar gabungan: gabungan dalam, gabungan luar, gabungan silang, dan gabungan tak sama. Artikel ini membahas setiap tipe gabungan yang bisa Anda gunakan, mengapa Anda menggunakan setiap tipe, dan cara membuat gabungan.

Gabungan adalah ke kueri apa hubungan untuk tabel: indikasi bagaimana data dalam dua sumber bisa digabungkan berdasarkan nilai data mereka yang sama. Berikut adalah ilustrasi gabungan dalam tampilan desain kueri dengan gabungan properti terbuka dalam kotak dialog:

Kotak Properti Gabungan.

Ini garis di antara tabel yang mewakili gabungan. Klik ganda gabungan untuk membuka Properti gabungan (digambarkan) kotak dialog dan meninjau atau mengubah gabungan.

Gabungan terkadang arah. Area ini dari kotak dialog memperlihatkan tabel mana yang dalam gabungan, dan bidang mana yang digunakan untuk menggabungkan tabel.

Area ini menentukan tipe gabungan: opsi 1 adalah gabungan dalam, 2 adalah gabungan luar kiri, dan 3 adalah gabungan luar kanan.

Bidang dari kedua tabel bisa digunakan, dan data yang berkaitan tugas tertentu ditampilkan dari masing-masing. Di gabungan dalam, tidak ada data disertakan. Di gabungan luar, catatan yang tidak terkait dari satu tabel juga disertakan dalam hasil kueri.

Atas halaman

Tipe gabungan

Ada empat tipe dasar gabungan: gabungan dalam, gabungan luar, gabungan silang, dan gabungan tak sama. Menggabungkan silang dan gabungan tak sama adalah tingkat lanjut tipe gabungan dan jarang digunakan, tapi Anda ketahui tentang mereka memiliki pemahaman penuh bagaimana gabungan berfungsi.

Gabungan dalam: hanya data yang berkaitan dari kedua tabel yang digabungkan

Gabungan dalam adalah salah satu yang Access hanya menyertakan data dari tabel jika ada data yang sesuai dalam tabel terkait, dan sebaliknya. Sering kali, Anda akan menggunakan gabungan dalam. Saat Anda membuat gabungan dan tidak menentukan jenis gabungan itu, akses menganggap diinginkan gabungan dalam. Gabungan berguna karena mereka memungkinkan Anda menggabungkan data dari dua sumber berdasarkan nilai bersama – jadi Anda hanya melihat data bila ada gambar lengkap.

Gabungan luar: semua data yang berkaitan digabungkan dengan benar, ditambah semua rekaman lainnya dari satu tabel

Gabungan luar seperti gabungan dalam, tetapi menambahkan baris yang tersisa dari salah satu tabel. Gabungan luar arah: gabungan luar kiri menyertakan semua rekaman dari tabel kiri – tabel pertama dalam gabungan – dan Penggabung kanan luar mencakup semua rekaman dari tabel kanan – tabel kedua dalam gabungan.

Gabungan luar penuh: semua data, digabungkan jika memungkinkan

Di beberapa sistem, gabungan luar dapat menyertakan semua baris dari kedua tabel, dengan baris digabungkan saat mereka sesuai. Ini disebut Penggabung luar penuh, dan Access memang tidak mendukung mereka. Namun, Anda bisa menggunakan gabungan silang dan kriteria untuk mendapatkan efek yang sama.

Gabungan silang: semua data, digabungkan dengan tiap cara yang mungkin

Sering kali, gabungan silang adalah efek sisi menambahkan dua tabel ke kueri dan lalu lupa Bergabunglah dengan mereka. Access menginterpretasikan ini berarti bahwa Anda ingin melihat setiap rekaman dari satu tabel yang digabungkan dengan setiap rekaman dari tabel lain – setiap kombinasi kemungkinan catatan. Karena tidak ada data bisa digabungkan, jenis gabungan jarang menghasilkan hasil yang berguna. Tapi ada beberapa kasus ketika gabungan silang adalah hanya apa yang Anda perlukan.

Gabungan tak sama: seperti gabungan biasa, tetapi menggunakan perbandingan yang berbeda untuk menggabungkan baris

Gabungan tak sama menggunakan operator selain tanda sama dengan (=) untuk membandingkan nilai dan menentukan apakah dan bagaimana untuk menggabungkan data. Gabungan tak sama secara eksplisit tidak didukung, namun Anda bisa menggunakan gabungan silang dan kriteria untuk mendapatkan efek yang sama.

Memperlihatkan baris di mana nilai yang sama ada di kedua tabel yang digabungkan

Jika Anda ingin memperlihatkan hanya baris yang memiliki nilai dalam bidang yang digabungkan yang cocok, Anda menggunakan gabungan dalam. Access membuat gabungan secara otomatis.

Gabungan dalam adalah jenis gabungan yang paling umum. Mereka beri tahu kueri tersebut baris dari salah satu gabungan tabel berkaitan dengan baris dalam tabel lain, berdasarkan data di bidang gabungan. Saat menjalankan kueri dengan gabungan dalam, hanya baris tersebut mana nilai yang sama ada di kedua tabel yang digabungkan akan disertakan dalam operasi kueri.

Bagaimana saya menggunakan gabungan dalam?

Sering kali, Anda tidak perlu melakukan apa pun untuk menggunakan gabungan dalam. Jika tabel yang Anda tambahkan ke kueri sudah memiliki hubungan, Access otomatis membuat gabungan dalam antara tiap pasangan tabel terkait, saat Anda menambahkan tabel. Jika integritas referensial diterapkan, Access juga menampilkan “1” di atas garis gabungan untuk memperlihatkan tabel yang ada di sisi “satu” dari hubungan satu ke banyak dan simbol tak terhingga () untuk memperlihatkan tabel yang ada di sisi “banyak”.

Bahkan jika Anda belum membuat hubungan, Access otomatis membuat gabungan jika Anda menambahkan dua tabel ke kueri dan tabel tersebut memiliki bidang dengan sama atau kompatibel tipe dan data salah satu bidang gabungan kunci utama. Simbol "satu" dan "banyak" tidak ditampilkan dalam kasus ini, karena integritas referensial tidak diberlakukan.

Jika Anda menambahkan kueri ke kueri Anda, dan tidak membuat hubungan antara kueri tersebut, Access tidak secara otomatis membuat gabungan antara kueri tersebut atau antara kueri dan tabel. Biasanya, Anda harus membuat mereka sendiri. Anda membuat gabungan dalam dengan menyeret bidang dari satu sumber data untuk bidang di sumber data lain. Access menampilkan garis di antara dua bidang untuk memperlihatkan gabungan telah dibuat.

Sintaks SQL untuk gabungan dalam

Gabungan dalam ditentukan dalam SQL di klausa FROM, seperti yang diperlihatkan di bawah ini:

FROM tabel1 INNER JOIN tabel2 ON tabel1.bidang1 membandingkan table2.bidang2

Operasi INNER JOIN memiliki bagian ini;

Bagian

Deskripsi

table1, table2

Nama tabel yang merupakan asal rekaman yang digabungkan.

field1, field2

Nama bidang yang digabungkan. Jika bukan numerik, bidang harus berupa tipe data yang sama dan berisi jenis data yang sama, tetapi tidak harus memiliki nama yang sama.

bandingkan

Operator perbandingan relasional apa pun: "=," "<," ">," "<=," ">=," or "<>."

Untuk informasi selengkapnya tentang sintaks gabungan dalam, lihat topik operasi INNER JOIN.

Atas halaman

Memperlihatkan semua baris dari satu tabel, dan baris yang berkaitan dari tabel lainnya

Gabungan luar beri kueri yang meskipun beberapa baris pada kedua sisi gabungan yang sesuai dengan persis, kueri harus menyertakan semua baris dari satu tabel, dan juga tersebut baris dari tabel lain yang berbagi nilai yang sama di kedua sisi gabungan.

Gabungan luar dapat dibiarkan gabungan luar atau dapat gabungan kanan luar. Di gabungan luar kiri, kueri menyertakan semua baris dari tabel pertama dalam pernyataan SQL klausul FROM, dan hanya tersebut baris dari tabel lain tempat bidang bergabung berisi nilai umum untuk kedua tabel. Di gabungan luar kanan, kueri menyertakan semua baris dari tabel kedua dalam pernyataan SQL klausul FROM, dan hanya tersebut baris dari tabel lain tempat bidang bergabung berisi nilai umum untuk kedua tabel.

Catatan: Anda dapat dengan mudah mengetahui mana tabel tabel kiri atau kanan tabel di Penggabung tertentu dengan mengklik ganda gabungan dan lalu Cari di kotak dialog Properti gabungan . Anda bisa juga beralih ke tampilan SQL, dan kemudian memeriksa klausa FROM.

Karena beberapa baris pada satu sisi gabungan luar tidak akan memiliki baris yang berkaitan dari tabel lain, beberapa bidang dikembalikan dalam hasil kueri dari yang tabel lainnya akan kosong ketika baris tidak sesuai.

Bagaimana saya menggunakan gabungan luar?

Anda membuat gabungan luar dengan memodifikasi gabungan dalam sudah ada. Jika ada gabungan dalam, Anda membuatnya, dan lalu mengubahnya menjadi gabungan luar.

Mengubah gabungan dalam menjadi gabungan luar

  1. Dalam tampilan desain kueri, klik ganda gabungan yang ingin Anda ubah.

    Kotak dialog Properti Gabungan muncul.

  2. Dalam kotak dialog Properti gabungan , perhatikan pilihan yang dicantumkan selain opsi 2 dan opsi 3.

  3. Klik opsi yang ingin Anda gunakan, lalu klik OK.

  4. Access menampilkan gabungan dan memperlihatkan panah yang mengarah dari sumber data tempat semua baris akan disertakan untuk sumber data mana hanya baris yang memenuhi kondisi gabungan akan disertakan.

Gabungan luar yang ambigu

Jika Anda membuat kueri yang berisi PENGGABUNG kiri dan gabungan dalam, Access mungkin tidak dapat menentukan yang bergabung operasi untuk dijalankan terlebih dahulu. Karena hasil berbeda, tergantung pada apakah gabungan kiri atau gabungan dalam dilakukan terlebih dahulu, Access menampilkan pesan kesalahan:

Untuk memperbaiki kesalahan ini, Anda harus mengubah kueri sehingga yang gabungan untuk melakukan terlebih dahulu.

Sintaks SQL untuk gabungan luar

Gabungan luar ditentukan dalam SQL di klausa FROM, seperti yang diperlihatkan di bawah ini:

FROM tabel1 [kiri | GABUNGAN kanan] table2
pada table1.field1 membandingkan tabel2.bidang2

Operasi LEFT JOIN dan RIGHT JOIN memiliki bagian ini:

Bagian

Deskripsi

table1, table2

Nama tabel yang merupakan asal rekaman yang digabungkan.

field1, field2

Nama bidang yang digabungkan. Bidang tersebut harus berupa tipe data yang sama dan berisi jenis data yang sama, tetapi bidang tersebut tidak harus memiliki nama yang sama.

bandingkan

Operator perbandingan relasional apa pun: "=," "<," ">," "<=," ">=," or "<>."

Untuk informasi selengkapnya tentang sintaks gabungan luar, lihat topik LEFT JOIN, operasi gabungan kanan.

Atas halaman

Memperlihatkan semua baris dari kedua tabel, dan bergabunglah dengan mereka di mana nilai yang sama ada

Saat Anda ingin memperlihatkan semua baris dari dua tabel dan bergabunglah dengan mereka berdasarkan nilai umum, Anda menggunakan Penggabung luar penuh. Access memang tidak mendukung gabungan luar penuh, tapi Anda bisa mendapatkan efek yang sama dengan menggunakan kueri gabungan. Prosedur berikut ini menjelaskan cara untuk melakukan hal ini, tetapi jika Anda ingin informasi selengkapnya tentang kueri gabungan, lihat bagian Lihat juga .

Untuk menggunakan kueri gabungan untuk melakukan Penggabung luar penuh:

  1. Membuat kueri yang memiliki Penggabung luar kiri pada bidang yang ingin Anda gunakan untuk Penggabung luar penuh.

  2. Pada tab Beranda, di dalam grup Tampilan, klik Tampilan, lalu klik Tampilan SQL.

  3. Tekan CTRL + C untuk menyalin kode SQL.

  4. Hapus tanda titik koma di akhir klausa FROM, dan lalu tekan ENTER.

  5. Ketik UNION, lalu tekan ENTER.

    Catatan: Jangan menggunakan kata kunci ALL saat Anda menggunakan kueri gabungan untuk melakukan Penggabung luar penuh.

  6. Tekan CTRL + V untuk menempelkan kode SQL yang Anda salin di langkah 3.

  7. Di kode yang Anda tempelkan, Ubah LEFT JOIN menjadi RIGHT JOIN.

  8. Hapus tanda titik koma di akhir klausa FROM kedua, lalu tekan ENTER.

  9. Tambahkan klausa WHERE yang menentukan nilai bidang gabungan yaitu NULL di tabel pertama yang tercantum dalam klausa FROM (tabel sebelah kiri).

    Misalnya, jika klausa FROM adalah:

    FROM Products RIGHT JOIN [Order Details] 
    ON Products.ID = [Order Details].[Product ID]

    Anda akan menambahkan klausa WHERE berikut ini:

    WHERE Products.ID IS NULL

  10. Ketikkan tanda titik koma (;) di akhir klausa WHERE untuk mengindikasikan akhir kueri gabungan.

  11. Pada tab Desain, dalam grup Hasil, klik Jalankan.

Gabungan silang

Gabungan silang berbeda dari gabungan dalam dan luar bahwa mereka tidak secara eksplisit ditunjukkan dalam Access. Di gabungan silang, setiap baris dari satu tabel digabungkan dengan setiap baris dari tabel lain, mengakibatkan apa yang disebut produk silang atau produk Cartesian. Kapan saja Anda menjalankan kueri yang memiliki tabel yang tidak secara eksplisit bergabung, produk silang hasilnya. Gabungan silang biasanya tidak disengaja, tetapi ada kasus di mana mereka dapat berguna.

Kenapa saya menggunakan gabungan silang?

Jika Anda ingin memeriksa setiap kombinasi kemungkinan baris antara dua tabel atau kueri, menggunakan gabungan silang. Misalnya, bisnis Anda telah memiliki tahun spektakuler, dan Anda mempertimbangkan memberikan potongan harga ke pelanggan Anda. Anda bisa menyusun kueri yang menjumlahkan masing-masing pelanggan pembelian, membuat tabel kecil yang memiliki beberapa kemungkinan potongan harga persentase, dan menggabungkan dua dalam kueri yang lain yang menjalankan gabungan silang. Anda berakhir dengan kueri yang menampilkan sekumpulan potongan harga hipotetis untuk masing-masing pelanggan.

Bagaimana saya menggunakan gabungan silang?

Gabungan silang diproduksi Kapan saja Anda menyertakan tabel atau kueri dalam kueri Anda dan tidak membuat setidaknya satu eksplisit bergabung untuk setiap tabel atau kueri. Akses menggabungkan setiap baris dari setiap tabel atau kueri yang tidak secara eksplisit tergabung ke tabel atau kueri untuk setiap baris lainnya dalam hasil. Pertimbangkan skenario potongan harga dari paragraf sebelumnya. Berasumsi Anda memiliki 91 pelanggan, dan bahwa Anda ingin melihat lima potongan harga kemungkinan persentase. Gabungan silang Anda menghasilkan 455 baris (produk 91 dan 5).

Seperti yang Anda bayangkan, gabungan silang yang tidak disengaja dapat membuat besar nomor baris dalam hasil kueri Anda. Selain itu, hasil ini biasanya tidak berarti, karena jika Anda tidak benar-benar untuk menggabungkan setiap baris dengan setiap baris lainnya, sebagian besar baris gabungan yang muncul di hasil akan tidak masuk akal. Akhirnya, kueri yang menggunakan gabungan silang yang tidak disengaja memakan waktu lama untuk menjalankan.

gabungan silang tak sengaja dalam tampilan Desain kueri

1. dalam lingkaran bidang harus digabungkan ke masing-masing.

Produk silang yang tidak disengaja

1. Catatan sangat besar jumlah catatan.

Hasil kueri yang diperbaiki

1. Perhatikan bahwa jumlah catatan lebih kecil.

Atas halaman

Menggabungkan tabel berdasarkan ketidaksamaan nilai-nilai bidang

Gabungan tidak memiliki berdasarkan persamaan bidang gabungan. Gabungan bisa berdasarkan operator perbandingan apa pun, seperti lebih besar dari (>), kurang dari (<), atau tidak sama dengan (<>). Gabungan yang tidak berdasarkan persamaan disebut gabungan tak sama.

Jika Anda ingin menggabungkan baris dari dua sumber data berdasarkan nilai bidang yang tidak sama dengan, Anda menggunakan gabungan tak sama. Biasanya, gabungan tak sama didasarkan pada salah satu yang lebih besar dari (>), kurang dari (<), lebih besar dari atau sama dengan (> =), atau lebih kecil atau sama dengan (< =) operator perbandingan. Gabungan tak sama yang didasarkan pada fungsi yang tidak sama dengan (<>) operator bisa kembali hampir sebanyak baris sebagai gabungan silang, dan hasil mungkin sulit untuk menafsirkan.

Bagaimana saya menggunakan gabungan tak sama?

Gabungan tak sama tidak didukung dalam tampilan desain. Jika Anda ingin menggunakannya, Anda harus melakukannya dengan menggunakan tampilan SQL. Namun, Anda bisa membuat gabungan dalam tampilan desain, beralih ke tampilan SQL, menemukan sama dengan operator perbandingan (=), dan Ubah untuk operator yang ingin Anda gunakan. Setelah Anda melakukan ini, Anda bisa hanya membuka kueri dalam tampilan desain lagi jika Anda mengubah pertama operator perbandingan kembali ke sama dengan (=) dalam tampilan SQL.

Menghapus gabungan

Jika Access secara otomatis membuat gabungan yang tidak Anda inginkan, atau jika Anda membuat gabungan secara tidak sengaja — misalnya, gabungan antara dua bidang yang memiliki tipe data berbeda — Anda bisa menghapus gabungan.

  1. Dalam kisi desain kueri, klik gabungan yang ingin Anda hapus.

  2. Tekan Hapus.

-atau-

  • Di kisi desain kueri, klik kanan gabungan yang ingin Anda hapus, dan lalu klik Hapus.

Atas halaman

Lihat Juga

Menambahkan rekaman ke tabel menggunakan kueri penambahan

Menggabungkan hasil dari beberapa kueri pemilihan dengan menggunakan kueri gabungan

Buat kueri berdasarkan beberapa tabel

Membuat, mengedit atau menghapus hubungan

Kembangkan keterampilan Office Anda
Jelajahi pelatihan
Dapatkan fitur baru terlebih dahulu
Gabung ke Office Insiders

Apakah informasi ini bermanfaat?

Terima kasih atas umpan balik Anda!

Terima kasih atas umpan balik Anda! Sepertinya menghubungkan Anda ke salah satu agen dukungan Office kami akan sangat membantu.

×