Terkadang, proses penyusunan dan penggunaan kueri di Access dapat semudah memilih bidang dari tabel, kemudian menerapkan beberapa kriteria, lalu menampilkan hasilnya. Namun bagaimana jika, seperti yang sering terjadi, data yang diperlukan tersebar di lebih dari satu tabel? Untungnya, Anda dapat membuat kueri yang menggabungkan informasi dari beberapa sumber. Topik ini membahas beberapa skenario pengambilan data dari beberapa tabel, serta mendemonstrasikan cara untuk melakukannya.
Apa yang ingin Anda lakukan?
Menggunakan data dari tabel terkait untuk menyempurnakan informasi dalam kueri
Anda mungkin mengalami kejadian ketika kueri yang didasarkan pada satu tabel memberikan informasi yang dibutuhkan, namun mengambil data dari tabel lain dapat mengembalikan hasil yang lebih jelas dan berguna. Misalnya, anggap Anda memiliki daftar ID karyawan yang muncul dalam hasil kueri. Anda menyadari bahwa akan lebih mudah untuk menampilkan nama karyawan dalam hasil, tetapi nama karyawan berada dalam tabel lain. Untuk memunculkan nama karyawan dalam hasil kueri, kedua tabel harus disertakan dalam kueri.
Menggunakan Panduan Kueri untuk menyusun kueri dari tabel utama dan tabel terkait
-
Pastikan bahwa tabel memiliki hubungan yang ditentukan di Jendela hubungan.
Caranya?
-
Pada tab Alat Database, dalam grup Perlihatkan/Sembunyikan, klik Hubungan.
-
Pada tab Desain, dalam grup Hubungan, klik Semua Hubungan.
-
Identifikasi tabel yang harus memiliki hubungan yang ditentukan.
-
Jika tabel terlihat di jendela Hubungan, lihat untuk memastikan bahwa hubungan telah ditetapkan.
Hubungan muncul sebagai garis yang menghubungkan kedua tabel di bidang yang sama. Klik ganda garis hubungan untuk melihat bidang mana dalam tabel yang terhubung oleh hubungan tersebut.
-
Jika tabel tidak terlihat dalam jendela Hubungan, Anda harus menambahkannya.
Pada tab Desain, dalam grup Perlihatkan/Sembunyikan, klik Nama Tabel.
Klik ganda setiap tabel yang ingin diperlihatkan, kemudian klik Tutup.
-
-
Jika tidak menemukan hubungan di antara dua tabel, buat dengan menyeret bidang dari salah satu tabel ke bidang dalam tabel lain. Bidang yang dibuat hubungannya di antara tabel-tabel tersebut harus memiliki tipe data yang identik.
Catatan: Anda dapat membuat hubungan antara bidang dari tipe data AutoNumber dan bidang dari tipe data Angka, jika bidang memiliki ukuran bidang bilangan bulat panjang. Hal ini akan sering terjadi ketika Anda membuat hubungan satu ke banyak.
Kotak dialog Edit Hubungan akan muncul.
-
Klik Buat untuk membuat hubungan.
Untuk informasi selengkapnya tentang opsi yang tersedia saat membuat hubungan, lihat artikel Membuat, mengedit atau menghapus hubungan.
-
Tutup Jendela hubungan.
-
-
Di tab Buat, dalam grup Kueri, klik Panduan Kueri.
-
Dalam kotak dialog Kueri Baru, klik Panduan Kueri Sederhana, lalu klik OK.
-
Dalam kotak kombo Tabel/Kueri, klik tabel berisi informasi dasar yang ingin disertakan dalam kueri.
-
Dalam daftar Bidang Tersedia, klik bidang pertama yang ingin disertakan dalam kueri, lalu klik tombol satu panah kanan untuk memindahkan bidang ke daftar Bidang Dipilih. Lakukan hal yang sama dengan setiap bidang tambahan dari tabel yang ingin disertakan dalam kueri. Bidang dapat berupa bidang yang ingin dikembalikan dalam output kueri, atau bidang yang ingin digunakan untuk membatasi baris dalam output dengan menerapkan kriteria.
-
Dalam kotak kombo Tabel/Kueri, klik tabel berisi data terkait yang ingin digunakan untuk menyempurnakan hasil kueri.
-
Tambahkan bidang yang ingin digunakan untuk menyempurnakan hasil kueri ke daftar Bidang Dipilih lalu klik Berikutnya.
-
Di bawah Apakah Anda menginginkan kueri detail atau ringkasan?, klik Detail atau Ringkasan.
Jika tidak ingin kueri melakukan fungsi agregat apa pun (Sum, Avg, Min, Max, Count, StDev, atau Var), pilih kueri detail. Jika ingin kueri melakukan fungsi agregat, pilih kueri ringkasan. Setelah membuat pilihan, klik Berikutnya.
-
Klik Selesai untuk menampilkan hasil.
Contoh yang menggunakan database sampel Northwind
Dalam contoh berikut, Anda menggunakan Panduan Kueri untuk membuat kueri yang menampilkan daftar pesanan, biaya pengiriman untuk setiap pesanan, dan nama karyawan yang menangani setiap pesanan.
Catatan: Contoh ini meliputi pengubahan database sampel Northwind. Anda mungkin ingin membuat salinan cadangan database sampel Northwind lalu mengikuti contoh ini menggunakan salinan cadangan tersebut.
Menggunakan Panduan Kueri untuk menyusun kueri
-
Buka database sampel Northwind. Tutup formulir masuk.
-
Di tab Buat, dalam grup Kueri, klik Panduan Kueri.
-
Dalam kotak dialog Kueri Baru, klik Panduan Kueri Sederhana, lalu klik OK.
-
Dalam kotak kombo Tabel/Kueri, klik Tabel: Pesanan.
-
Dalam daftar Bidang Tersedia, klik ganda IDPesanan untuk memindahkan bidang tersebut ke daftar Bidang Dipilih. Klik ganda Biaya Pengiriman untuk memindahkan bidang tersebut ke daftar Bidang Dipilih.
-
Dalam kotak kombo Tabel/Kueri, klik Tabel: Karyawan.
-
Dalam daftar Bidang Tersedia, klik ganda NamaDepan untuk memindahkan bidang tersebut ke daftar Bidang Dipilih. Klik ganda NamaBelakang untuk memindahkan bidang tersebut ke daftar Bidang Dipilih. Klik Berikutnya.
-
Karena Anda membuat daftar semua pesanan, gunakan kueri detail. Jika menjumlahkan biaya pengiriman berdasarkan karyawan atau melakukan beberapa fungsi agregat lain, gunakan kueri ringkasan. Klik Detail (memperlihatkan setiap bidang dari setiap data), lalu klik Berikutnya.
-
Klik Selesai untuk menampilkan hasil.
Kueri akan menghasilkan daftar pesanan, masing-masing dengan biaya pengiriman beserta nama pertama dan belakang karyawan yang menanganinya.
Menyambungkan data dalam dua tabel menggunakan hubungannya dengan tabel ketiga
Data dalam dua tabel biasanya saling terkait satu sama lain melalui tabel ketiga. Hal ini biasanya menjadi masalah karena data di antara kedua tabel pertama terkait dalam hubungan banyak ke banyak. Merupakan praktik desain database yang baik untuk memisahkan hubungan banyak ke banyak antara dua tabel menjadi dua hubungan satu ke banyak yang melibatkan tiga tabel. Lakukan hal ini dengan membuat tabel ketiga, disebut tabel sambungan atau tabel hubungan, yang memiliki kunci utama dan kunci asing untuk setiap tabel lainnya. Hubungan satu ke banyak kemudian dibuat di antara setiap kunci asing dalam tabel sambungan dan kunci utama yang terkait dari salah satu tabel lain. Dalam kasus tersebut, ketiga tabel harus disertakan dalam kueri, bahkan meskipun Anda hanya ingin mengambil data dari dua tabel saja.
Menyusun kueri pemilihan menggunakan tabel dengan hubungan banyak ke banyak
-
Di tab Buat, dalam grup Kueri, klik Desain Kueri.
-
Klik ganda dua tabel yang berisi data yang ingin Disertakan dalam kueri dan juga tabel persimpangan yang menautkannya, lalu klik Tutup.
Ketiga tabel akan muncul di ruang kerja desain kueri, tergabung pada bidang yang sesuai.
-
Klik ganda setiap bidang yang ingin digunakan dalam hasil kueri. Bidang tersebut kemudian muncul dalam kisi desain kueri.
-
Di kisi desain kueri, gunakan baris Kriteria untuk memasukkan kriteria bidang. Untuk menggunakan kriteria bidang tanpa menampilkan bidang dalam hasil kueri, kosongkan kotak centang di baris Perlihatkan untuk bidang tersebut.
-
Untuk mengurutkan hasil berdasarkan nilai dalam bidang, di kisi desain kueri, klik Urutkan naik atau Urutkan turun (tergantung pada cara yang diinginkan untuk mengurutkan data) dalam baris Urutkan untuk bidang tersebut.
-
Pada tab Desain, dalam grup Hasil, klik Jalankan.
Access menampilkan output kueri di tampilan lembar data.
Contoh yang menggunakan database sampel Northwind
Catatan: Contoh ini meliputi pengubahan database sampel Northwind. Anda mungkin ingin membuat salinan cadangan database sampel Northwind, lalu mengikuti contoh ini menggunakan salinan cadangan tersebut.
Misalnya Anda memiliki kesempatan baru: pemasok di Rio de Janeiro menemukan Situs Web Anda, dan mungkin ingin berbisnis dengan Anda. Namun, mereka hanya beroperasi di Rio dan dekat São Paulo. Mereka memasok setiap kategori produk makanan yang Anda negosiasikan. Pemasok ini merupakan bisnis yang cukup besar, dan menginginkan jaminan bahwa Anda dapat memberikan akses untuk potensi penjualan yang sepadan: sedikitnya penjualan senilai R$20.000,00 per tahun (sekitar Rp128.000.000,00). Dapatkah Anda menyediakan pasar yang mereka perlukan?
Data yang dibutuhkan untuk menjawab pertanyaan ini ditemukan di dua tempat: tabel Pelanggan dan tabel Detail Pesanan. Tabel ini tertaut satu sama lain melalui tabel Pesanan. Hubungan antar tabel telah ditentukan. Dalam tabel Pesanan, setiap pesanan hanya dapat memiliki satu pelanggan, yang terkait dengan tabel Pelanggan di bidang IDPelanggan. Setiap data dalam tabel Detail Pesanan hanya terkait dengan satu pesanan dalam tabel Pesanan, di bidang IDPesanan. Jadi, pelanggan tertentu dapat memiliki banyak pesanan, yang masing-masing memiliki banyak detail pesanan.
Dalam contoh ini, Anda akan membuat kueri tab silang yang menampilkan total penjualan per tahun, di kota Rio de Janeiro dan São Paulo.
Buat kueri dalam tampilan Desain
-
Buka database Northwind. Tutup formulir masuk.
-
Di tab Buat, dalam grup Kueri, klik Desain Kueri.
-
Klik ganda Pelanggan, Pesanan, laluDetail Pesanan.
Ketiga tabel akan muncul di ruang kerja desain kueri.
-
Dalam tabel Pelanggan, klik ganda bidang Kota untuk menambahkannya ke kisi desain kueri.
-
Di kisi desain kueri, dalam kolom Kota, di baris Kriteria, ketikkan Di ("Rio de Janeiro","São Paulo"). Tindakan ini akan menyertakan data dengan pelanggan yang berada di salah satu kota ini saja dalam kueri.
-
Dalam tabel Detail Pesanan, klik ganda bidang TanggalPengiriman dan HargaSatuan.
Bidang ditambahkan ke kisi desain kueri.
-
Dalam kolom TanggalPengiriman di kisi desain kueri, pilih baris Bidang. Ganti [TanggalPengiriman] dengan Tahun: Format([TanggalPengiriman],"yyyy"). Fungsi ini akan membuat alias bidang, Tahun, yang memungkinkan Anda hanya menggunakan bagian tahun dari nilai dalam bidang TanggalPengiriman.
-
Dalam kolom HargaSatuan di kisi desain kueri, pilih baris Bidang. Ganti [HargaSatuan] dengan Penjualan: [Detail Pesanan].[HargaSatuan]*[Jumlah]-[Detail Pesanan].[HargaSatuan]*[Jumlah]*[Diskon]. Fungsi ini akan membuat alias bidang, Penjualan, yang menghitung penjualan untuk setiap data.
-
Pada tab Desain, dalam grup Tipe Kueri, klik Tab silang.
Dua baris baru, Total dan Tab silang, muncul di kisi desain kueri.
-
Dalam kolom Kota di kisi desain kueri, klik baris Tab silang, lalu klik Judul Baris.
Fungsi ini akan memunculkan nilai kota sebagai judul baris (yaitu, kueri mengembalikan satu baris untuk setiap kota).
-
Dalam kolom Tahun, klik baris Tab silang, lalu klik Judul Kolom.
Fungsi ini akan memunculkan nilai tahun sebagai judul kolom (yaitu, kueri mengembalikan satu kolom untuk setiap tahun).
-
Dalam kolom Penjualan, klik baris Tab silang, lalu klik Nilai.
Fungsi ini akan memunculkan nilai penjualan di persimpangan antara baris dan kolom (yaitu, kueri mengembalikan satu nilai penjualan untuk setiap kombinasi kota dan tahun).
-
Dalam kolom Penjualan, klik baris Total, lalu klik Jumlahkan.
Fungsi ini menyebabkan kueri menjumlahkan nilai dalam kolom ini.
Anda dapat membiarkan baris Total untuk dua kolom lainnya dengan nilai default dari Kelompokkan Menurut, karena ingin melihat setiap nilai untuk kolom ini, bukan nilai agregat.
-
Pada tab Desain, dalam grup Hasil, klik Jalankan.
Anda kini memiliki kueri yang mengembalikan total penjualan berdasarkan tahun di Rio de Janeiro dan São Paulo.
Menampilkan semua data dari dua tabel yang serupa
Terkadang, Anda mungkin ingin menggabungkan data dari dua tabel yang identik secara struktur, tetapi salah satu tabel berada dalam database lain. Pertimbangkan skenario berikut.
Misalnya, Anda adalah seorang analis yang bekerja dengan data siswa. Anda mengupayakan inisiatif berbagi data antara sekolah Anda dan sekolah lain sehingga keduanya dapat meningkatkan kurikulum mereka. Untuk beberapa pertanyaan yang ingin Anda jelajahi, akan lebih baik untuk melihat semua data dari kedua sekolah secara bersamaan daripada melihat setiap datanya secara terpisah.
Anda dapat mengimpor data sekolah lain ke dalam tabel baru dalam database, tetapi kemudian setiap perubahan pada data sekolah lain tidak akan ditampilkan dalam database. Solusi yang lebih baik adalah dengan menautkan ke tabel sekolah lain, lalu membuat kueri yang menggabungkan data saat Anda menjalankannya. Anda akan dapat menganalisis data sebagai kumpulan tunggal, tidak perlu menjalankan dua analisis dan mencoba menafsirkannya sebagai satu analisis.
Untuk menampilkan semua data dari dua tabel dengan struktur yang identik, gunakan kueri gabungan.
Kueri gabungan tidak dapat ditampilkan dalam tampilan Desain. Buat kueri gabungan menggunakan perintah SQL yang dimasukkan dalam tab objek tampilan SQL.
Membuat kueri gabungan menggunakan dua tabel
-
Di tab Buat, dalam grup Kueri, klik Desain Kueri.
-
Pada tab Desain, dalam grup Tipe Kueri, klik Gabungan.
Kueri beralih dari tampilan Desain ke tampilan SQL. Pada tahap ini, tab objek tampilan SQL kosong.
-
Dalam tampilan SQL, ketikkan SELECT, diikuti dengan daftar bidang dari tabel pertama yang diinginkan dalam kueri. Nama bidang harus diapit dalam tanda kurung siku dan dipisahkan oleh koma. Setelah mengetikkan nama bidang, tekan ENTER. Kursor berpindah menurun satu baris dalam tampilan SQL.
-
Ketikkan FROM, diikuti dengan nama tabel pertama yang diinginkan dalam kueri. Tekan ENTER.
-
Jika ingin menentukan kriteria untuk bidang dari tabel pertama, ketikkan WHERE, diikuti dengan nama bidang, operator perbandingan (biasanya, tanda sama dengan (=)), dan kriteria. Anda dapat menambahkan kriteria tambahan pada akhir klausa WHERE menggunakan kata kunci AND dan sintaks serupa yang digunakan untuk kriteria pertama, misalnya, WHERE [TingkatKelas]="100" AND [JamPelajaran]>2. Setelah menentukan kriteria, tekan ENTER.
-
Ketik UNION, lalu tekan ENTER.
-
Ketik SELECT, diikuti dengan daftar bidang dari tabel kedua yang diinginkan dalam kueri. Anda harus menyertakan bidang yang sama dari tabel ini yang disertakan dari tabel pertama, dan dalam urutan yang sama. Nama bidang harus diapit dalam tanda kurung siku dan dipisahkan oleh koma. Setelah mengetikkan nama bidang, tekan ENTER.
-
Ketikkan FROM, diikuti dengan nama tabel kedua yang ingin disertakan dalam kueri. Tekan ENTER.
-
Jika Anda ingin, tambahkan klausa WHERE, seperti yang diuraikan dalam langkah 6 prosedur ini.
-
Ketikkan tanda titik koma (;) untuk menandai akhir kueri Anda.
-
Pada tab Desain, dalam grup Hasil, klik Jalankan.
Hasil akan muncul dalam tampilan Lembar Data.