Mencipta pertanyaan berdasarkan pada berbilang Jadual

Penting: Artikel ini diterjemahkan oleh mesin, lihatlah notis penafian. Sila dapatkan versi Bahasa Inggeris artikel ini di sini sebagai rujukan anda

Kadangkala, proses membina dan menggunakan pertanyaan dalam Access adalah perkara yang mudah memilih medan daripada jadual, mungkin menggunakan beberapa kriteria dan kemudian melihat hasil. Tetapi Bagaimana jika, seperti lebih kerap huruf, data yang anda perlukan ialah menyebarkan dalam lebih daripada satu jadual? Mujurlah, anda boleh membina pertanyaan yang menggabungkan maklumat daripada berbilang sumber. Topik ini membincangkan beberapa senario yang anda menarik data dari lebih daripada satu jadual dan menunjukkan cara anda melakukannya.

Apakah yang anda ingin lakukan?

Menggunakan data daripada jadual berkaitan untuk meningkatkan maklumat dalam pertanyaan anda

Menyambungkan data dalam dua Jadual dengan menggunakan hubungan mereka dengan jadual ketiga

Melihat semua rekod daripada dua jadual yang serupa

Menggunakan data daripada jadual berkaitan untuk meningkatkan maklumat dalam pertanyaan anda

Anda mungkin mempunyai kes yang pertanyaan yang berdasarkan pada satu jadual memberikan anda maklumat yang anda perlukan, tetapi menarik data dari jadual lain akan membantu untuk membuat hasil pertanyaan walaupun lebih jelas dan lebih berguna. Contohnya, katakan anda mempunyai senarai pekerja ID yang muncul dalam hasil pertanyaan anda. Anda menyedari ia akan lebih berguna untuk melihat nama pekerja dalam hasil, tetapi nama pekerja berada dalam Jadual lain. Untuk mendapatkan nama pekerja muncul dalam hasil pertanyaan anda, anda perlu memasukkan kedua-dua Jadual dalam pertanyaan anda.

Menggunakan Bestari pertanyaan untuk membina pertanyaan daripada jadual primer dan jadual berkaitan

  1. Memastikan Jadual mempunyai tertakrif hubungan dalam Tetingkap hubungan.

    Bagaimana?

    1. Pada tab Alat pangkalan data , dalam Kumpulan Tunjukkan/Sembunyikan , klik perhubungan.

    2. Pada tab Reka Bentuk, dalam kumpulan Perhubungan, klik Semua Perhubungan.

    3. Mengenal pasti jadual yang harus mempunyai perhubungan yang ditentukan.

      • Jika Jadual boleh dilihat dalam tetingkap perhubungan, semak untuk melihat bahawa perhubungan telah telah ditakrifkan.

        Perhubungan muncul sebagai baris menyambungkan dua Jadual pada medan biasa. Anda boleh dwiklik garisan perhubungan untuk melihat medan dalam Jadual yang disambungkan dengan perhubungan.

      • Jika Jadual tidak kelihatan dalam tetingkap perhubungan, anda mesti menambah mereka.

        Pada tab Reka bentuk , dalam Kumpulan Tunjukkan/Sembunyikan , klik Nama jadual.

        Dwiklik setiap jadual yang anda ingin Tunjukkan, dan kemudian klik tutup.

    4. Jika anda tidak menemui perhubungan antara dua Jadual, mencipta satu dengan menyeret medan dari satu jadual pada medan pada jadual yang lain. Medan yang anda mencipta perhubungan antara Jadual mesti mempunyai jenis data yang sama.

      Nota: Anda boleh mencipta perhubungan antara medan yang merupakan Jenis data AutoNombor dan medan yang merupakan Jenis data nombor, jika medan tersebut mempunyai saiz medan integer panjang. Ini biasanya akan huruf apabila anda mencipta hubungan satu ke banyak.

      Kotak dialog Edit Perhubungan muncul.

    5. Klik Cipta untuk mencipta perhubungan.

      Untuk maklumat lanjut tentang opsyen yang anda ada apabila anda mencipta perhubungan, lihat artikel mencipta, mengedit atau memadamkan perhubungan.

    6. Tutup tetingkap perhubungan.

  2. Pada tab Cipta , dalam Kumpulan pertanyaan , klik Bestari pertanyaan. Ambil perhatian, jika anda menggunakan Access 2007, pada tab Cipta , dalam Kumpulan lain , klik Bestari pertanyaan.

  3. Dalam kotak dialog Pertanyaan baru , klik Bestari pertanyaan ringkasdan kemudian klik OK.

  4. Dalam kotak kombo Jadual/pertanyaan , klik jadual yang mengandungi asas maklumat yang anda inginkan disertakan dalam pertanyaan anda.

  5. Dalam senarai Medan tersedia , klik medan pertama yang anda ingin sertakan dalam pertanyaan anda, dan kemudian klik butang anak panah kanan tunggal untuk mengalihkan medan tersebut pada senarai Medan terpilih . Lakukan yang sama dengan setiap medan tambahan daripada jadual yang anda ingin sertakan dalam pertanyaan anda. Ini boleh menjadi medan yang anda ingin dikembalikan dalam output pertanyaan atau medan yang anda ingin gunakan untuk mengehadkan baris dalam output dengan menggunakan kriteria.

  6. Dalam kotak kombo Jadual/pertanyaan , klik jadual yang mengandungi data berkaitan yang anda ingin gunakan untuk meningkatkan hasil pertanyaan anda.

  7. Menambah medan yang anda ingin gunakan untuk meningkatkan hasil pertanyaan anda pada senarai Medan terpilih dan kemudian klik berikut.

  8. Di bawah Adakah anda mahu pertanyaan butiran atau ringkasan?, klik sama ada butiran atau ringkasan.

    Jika anda tidak ingin pertanyaan anda untuk melaksanakan sebarang fungsi agregat (Sum, Avg, Min, Max, kiraan, StDevatau Var), pilih Butiran pertanyaan. Jika anda inginkan pertanyaan anda untuk melaksanakan fungsi agregat, pilih pertanyaan ringkasan. Selepas anda membuat pilihan anda, klik berikut.

  9. Klik selesai untuk melihat hasil.

Contoh yang menggunakan pangkalan data sampel Northwind

Dalam contoh berikut, anda menggunakan Bestari pertanyaan untuk membina pertanyaan yang memaparkan senarai pesanan, yuran penghantaran bagi setiap pesanan dan nama pekerja yang dikendalikan setiap pesanan.

Nota: Contoh ini melibatkan mengubahsuai pangkalan data sampel Northwind. Anda mungkin ingin membuat salinan sandaran pangkalan data sampel Northwind dan kemudian ikuti contoh ini menggunakan salinan sandaran tersebut.

Menggunakan Bestari pertanyaan untuk membina pertanyaan

  1. Buka pangkalan data sampel Northwind. Tutup borang log masuk.

  2. Pada tab Cipta , dalam Kumpulan pertanyaan , klik Bestari pertanyaan. Ambil perhatian, jika anda menggunakan Access 2007, pada tab Cipta , dalam Kumpulan lain , klik Bestari pertanyaan.

  3. Dalam kotak dialog Pertanyaan baru , klik Bestari pertanyaan ringkasdan kemudian klik OK.

  4. Dalam kotak kombo Jadual/pertanyaan , klik Jadual: pesanan.

  5. Dalam senarai Medan tersedia , dwiklik Idpesanan untuk mengalihkan medan tersebut pada senarai Medan terpilih . Dwiklik Yuran penghantaran untuk mengalihkan medan tersebut pada senarai Medan terpilih .

  6. Dalam kotak kombo Jadual/pertanyaan , klik Jadual: pekerja.

  7. Dalam senarai Medan tersedia , dwiklik FirstName untuk mengalihkan medan tersebut pada senarai Medan terpilih . Dwiklik LastName untuk mengalihkan medan tersebut pada senarai Medan terpilih . Klik berikut.

  8. Oleh sebab anda mencipta senarai semua pesanan, anda ingin menggunakan pertanyaan butiran. Jika anda sedang jumlahkan yuran penghantaran mengikut pekerja atau melaksanakan beberapa fungsi agregat yang lain, anda menggunakan pertanyaan ringkasan. Klik butiran (menunjukkan setiap medan setiap rekod), dan kemudian klik berikut.

  9. Klik selesai untuk melihat hasil.

Pertanyaan mengembalikan senarai pesanan, setiap satunya dengan kos penghantaran dan nama pertama dan terakhir pekerja yang ia dikendalikan.

Halaman atas

Menyambungkan data dalam dua Jadual dengan menggunakan hubungan mereka dengan jadual ketiga

Biasanya, data dalam dua jadual yang berkaitan dengan setiap lain melalui ketiga Jadual. Hal ini biasanya huruf kerana data antara pertama dua Jadual berkaitan dalam hubungan banyak ke banyak. Biasanya, ia adalah amalan Reka bentuk pangkalan data yang baik untuk memisahkan perhubungan satu ke banyak antara dua Jadual ke dalam dua perhubungan satu ke banyak yang melibatkan tiga Jadual. Anda melakukannya dengan mencipta Jadual Ketiga, dipanggil Simpang Jadual atau jadual perhubungan, yang mempunyai kunci primer dan kunci asing untuk setiap Jadual lain. Perhubungan satu ke banyak kemudian dicipta antara setiap kunci asing dalam Jadual Simpang dan kunci primer sepadan salah satu jadual lain. Dalam kes tersebut, anda perlu memasukkan semua tiga Jadual dalam pertanyaan anda, walaupun jika anda ingin mengambil data daripada hanya dua daripadanya.

Membina pertanyaan Pilih menggunakan Jadual dengan perhubungan satu ke banyak

  1. Pada tab Cipta , dalam Kumpulan pertanyaan , klik Reka bentuk pertanyaan. Ambil perhatian, jika anda menggunakan Access 2007, pada tab Cipta , dalam Kumpulan lain , klik Reka bentuk pertanyaan.

    Kotak dialog Tunjukkan Jadual dibuka.

  2. Dalam kotak dialog Tunjukkan Jadual , dwiklik dua jadual yang mengandungi data yang anda ingin masukkan dalam pertanyaan anda dan juga Jadual Simpang yang memaut padanya, dan kemudian klik tutup.

    Semua Jadual tiga yang muncul dalam ruang kerja Reka bentuk pertanyaan, digabungkan pada medan yang sesuai.

  3. Dwiklik setiap medan yang anda ingin gunakan dalam hasil pertanyaan anda. Setiap medan kemudian muncul dalam pertanyaan grid reka bentuk.

  4. Dalam grid Reka bentuk pertanyaan, gunakan baris kriteria untuk memasukkan kriteria medan. Untuk menggunakan kriteria medan tanpa memaparkan medan dalam hasil pertanyaan, kosongkan kotak semak dalam baris Tunjukkan bagi medan tersebut.

  5. Untuk mengisih hasil berdasarkan nilai dalam medan, dalam grid Reka bentuk pertanyaan, klik menaik atau menurun (bergantung pada cara yang anda ingin Mengisih rekod) dalam baris Isih bagi medan tersebut.

  6. Pada tab Reka Bentuk dalam kumpulan Hasil, klik Jalankan.

    Access memaparkan output pertanyaan dalam Pandangan helaian data.

Contoh yang menggunakan pangkalan data sampel Northwind

Nota: Contoh ini melibatkan mengubahsuai pangkalan data sampel Northwind. Anda mungkin ingin membuat salinan sandaran pangkalan data sampel Northwind dan kemudian ikuti contoh ini menggunakan salinan sandaran.

Katakan anda mempunyai peluang baru: pembekal dalam Rio de Janeiro mempunyai ditemui Laman Web anda dan boleh lakukan perniagaan dengan anda. Walau bagaimanapun, ia hanya beroperasi dalam Rio dan berdekatan São Paulo. Ia bekalkan setiap kategori produk makanan yang anda broker. Mereka yang agak perniagaan yang besar dan ingin jaminan anda yang anda boleh memberikan mereka capaian jualan cukup berpotensi untuk menjadikannya berbaloi: sekurang-kurangnya R$ 20,000.00 setiap tahun jualan (tentang $9,300.00). Boleh anda berikan mereka pasaran yang mereka perlukan?

Data yang anda perlukan untuk menjawab soalan ini ditemui dalam dua tempat: Jadual pelanggan dan jadual butiran pesanan. Jadual ini dipautkan kepada satu sama lain dengan jadual. Perhubungan antara Jadual telah telah ditentukan. Dalam Jadual pesanan, tertib setiap boleh mempunyai hanya satu pelanggan yang berkaitan dengan jadual pelanggan pada medan ID pelanggan. Setiap rekod dalam jadual butiran pesanan berkaitan dengan hanya satu pesanan dalam Jadual pesanan, pada medan Idpesanan. Oleh itu, pelanggan diberikan boleh mempunyai banyak pesanan, setiap satunya mempunyai banyak butiran pesanan.

Dalam contoh ini, anda akan membina pertanyaan tab silang yang memaparkan jumlah jualan setiap tahun, dalam bandar Rio de Janeiro dan São Paulo.

Membina pertanyaan dalam pandangan Reka bentuk

  1. Buka pangkalan data Northwind. Tutup borang log masuk.

  2. Pada tab Cipta , dalam Kumpulan pertanyaan , klik Reka bentuk pertanyaan. Ambil perhatian, jika anda menggunakan Access 2007, pada tab Cipta , dalam Kumpulan lain , klik Reka bentuk pertanyaan.

    Kotak dialog Tunjukkan Jadual dibuka.

  3. Dalam kotak dialog Tunjukkan Jadual , dwiklik pelanggan, ataudersdan Butiran pesanan, dan kemudian klik tutup.

    Semua Jadual tiga muncul dalam ruang kerja Reka bentuk pertanyaan.

  4. Dalam Jadual pelanggan, dwiklik medan bandar untuk menambahnya pada grid Reka bentuk pertanyaan.

  5. Dalam grid Reka bentuk pertanyaan, dalam lajur bandar , dalam baris kriteria , taipkan dalam ("Rio de Janeiro", "São Paulo"). Ini menyebabkan hanya tersebut rekod pelanggan di manakah dalam salah satu daripada dua bandar ini akan disertakan dalam pertanyaan.

  6. Dalam jadual butiran pesanan, dwiklik medan UnitPrice dan ShippedDate yang.

    Medan ditambahkan pada grid Reka bentuk pertanyaan.

  7. Dalam lajur ShippedDate dalam grid Reka bentuk pertanyaan, pilih baris medan . Menggantikan [ShippedDate] dengan tahun: Format([ShippedDate],"yyyy"). Ini mencipta medan alias, tahun, yang membenarkan anda untuk menggunakan hanya bahagian tahun nilai dalam medan ShippedDate.

  8. Dalam lajur UnitPrice dalam grid Reka bentuk pertanyaan, pilih baris medan . Menggantikan [UnitPrice] dengan jualan : [butiran pesanan]. [ UnitPrice] * [kuantiti]-[butiran pesanan]. [UnitPrice] * [kuantiti] * [diskaun]. Ini mencipta alias medan, jualan, yang mengira jualan untuk setiap rekod.

  9. Pada tab Reka Bentuk, dalam kumpulan Jenis Pertanyaan, klik Tab Silang.

    Dua baris baru, jumlah dan tab silang, muncul dalam grid Reka bentuk pertanyaan.

  10. Dalam lajur bandar dalam grid Reka bentuk pertanyaan, klik baris tab silang , dan kemudian klik Tajuk baris.

    Ini menjadikan nilai bandar yang muncul sebagai tajuk baris (iaitu, pertanyaan mengembalikan satu baris bagi setiap bandar).

  11. Dalam lajur tahun , klik baris tab silang , dan kemudian klik Tajuk lajur.

    Ini menjadikan tahun nilai muncul sebagai tajuk lajur (iaitu, pertanyaan mengembalikan satu lajur bagi setiap tahun).

  12. Dalam lajur jualan , klik baris tab silang , dan kemudian klik nilai.

    Ini menjadikan nilai jualan yang muncul di persilangan baris dan lajur (iaitu, pertanyaan mengembalikan satu nilai jualan untuk setiap gabungan bandar dan tahun).

  13. Dalam lajur jualan , klik baris jumlah , dan kemudian klik jumlah.

    Ini menyebabkan pertanyaan untuk menjumlahkan nilai dalam lajur ini.

    Anda boleh membiarkan jumlah baris bagi dua lajur lain pada nilai lalai bagi Kumpulan mengikut, kerana anda ingin melihat setiap nilai untuk lajur ini, tidak mengumpulkan nilai.

  14. Pada tab Reka Bentuk dalam kumpulan Hasil, klik Jalankan.

Anda kini mempunyai pertanyaan yang mengembalikan jumlah jualan mengikut tahun dalam Rio de Janeiro dan São Paulo.

Halaman atas

Melihat semua rekod daripada dua jadual yang serupa

Kadangkala, anda akan ingin menggabungkan data daripada dua jadual yang sama dalam struktur, tetapi salah satu daripadanya terletak dalam pangkalan data lain. Pertimbangkan senario berikut.

Katakan anda adalah penganalisis yang bekerja dengan data pelajar. Anda akan memulakan perkongsian inisiatif antara sekolah anda dan sekolah lain, data agar kedua-dua sekolah boleh meningkatkan kurikulum mereka. Bagi beberapa soalan yang anda ingin Jelajah, ia akan menjadi lebih baik untuk melihat semua rekod daripada kedua-dua sekolah bersama-sama dan bukannya sekolah setiap rekod secara berasingan.

Anda boleh mengimport data sekolah lain ke dalam Jadual baru dalam pangkalan data anda, tetapi kemudian sebarang perubahan kepada data sekolah lain akan tidak akan kelihatan dalam pangkalan data anda. Penyelesaian yang lebih baik akan pautkan ke Jadual sekolah lain, dan kemudian mencipta pertanyaan yang digabungkan data apabila anda menjalankan mereka. Anda akan dapat menganalisis data sebagai satu set, dan bukannya menjalankan analisis dua dan cuba mentafsir mereka seolah-olah ia adalah salah satu.

Untuk melihat semua rekod daripada dua Jadual dengan struktur yang sama, anda menggunakan pertanyaan kesatuan.

Pertanyaan Kesatuan tidak dipaparkan dalam pandangan Reka bentuk. Anda membina mereka menggunakan perintah SQL yang anda masukkan dalam tab objek Pandangan SQL .

Mencipta pertanyaan Kesatuan menggunakan dua Jadual

  1. Pada tab Cipta , dalam Kumpulan pertanyaan , klik Reka bentuk pertanyaan. Ambil perhatian, jika anda menggunakan Access 2007, pada tab Cipta , dalam Kumpulan lain , klik Reka bentuk pertanyaan.

    Grid Reka bentuk pertanyaan baru terbuka dan kotak dialog Tunjukkan Jadual muncul.

  2. Dalam kotak dialog Tunjukkan Jadual , klik tutup.

  3. Pada tab Reka bentuk , dalam Kumpulan Jenis pertanyaan , klik Kesatuan.

    Pertanyaan akan bertukar daripada pandangan Reka bentuk untuk pandangan SQL. Pada ketika ini, tab objek pandangan SQL adalah kosong.

  4. Dalam pandangan SQL, taipkan Pilih, diikuti oleh senarai medan daripada yang pertama jadual yang anda inginkan dalam pertanyaan. Nama medan harus boleh dikurung dalam tanda kurung siku dan dipisahkan oleh koma. Apabila anda selesai menaip nama medan, tekan ENTER. Kursor beralih ke bawah satu baris dalam pandangan SQL.

  5. Taipkan daripada, diikuti dengan nama pertama jadual yang anda inginkan dalam pertanyaan. Tekan ENTER.

  6. Jika anda ingin menentukan kriteria untuk medan daripada jadual pertama, taipkan lokasi, diikuti oleh nama medan, operator perbandingan (biasanya, tanda sama dengan (=)) dan kriteria. Anda boleh menambah kriteria tambahan ke hujung Klausa WHERE menggunakan kata kunci dan dan sintaks yang sama yang digunakan untuk kriteria pertama; Contohnya, di mana [ClassLevel] = "100" dan [CreditHours] > 2. Apabila anda selesai menentukan kriteria, tekan ENTER.

  7. Taipkan UNION, dan kemudian tekan ENTER.

  8. Jenis Pilih, diikuti oleh senarai medan daripada jadual kedua yang anda inginkan dalam pertanyaan. Anda perlu memasukkan sama medan daripada jadual ini termasuk anda dari jadual pertama dan dalam tertib yang sama. Nama medan harus boleh dikurung dalam tanda kurung siku dan dipisahkan oleh koma. Apabila anda selesai menaip nama medan, tekan ENTER.

  9. Jenis daripada, diikuti dengan nama Jadual Kedua yang anda ingin sertakan dalam pertanyaan. Tekan ENTER.

  10. Jika anda inginkan, tambah Klausa WHERE, seperti yang diperihalkan dalam langkah 6 prosedur ini.

  11. Taipkan koma bernoktah (;) untuk menunjukkan hujung pertanyaan anda.

  12. Pada tab Reka Bentuk dalam kumpulan Hasil, klik Jalankan.

    Hasil anda muncul dalam pandangan helaian data.

Halaman atas

Nota: Notis Penafian Penterjemahan Mesin: Artikel ini telah diterjemah oleh sistem komputer tanpa campur tangan manusia. Microsoft menawarkan penterjemahan mesin ini untuk membantu pengguna-pengguna yang tidak bertutur dalam Bahasa Inggeris supaya dapat menikmati kandungan mengenai produk, perkhidmatan dan teknologi Microsoft. Artikel ini mungkin mengandungi ralat perbendaharaan kata, sintaks atau tatabahasa kerana ia diterjemahkan oleh mesin.

Lihat Juga

Menyertai jadual dan pertanyaan

Kembangkan kemahiran anda
Jelajahi latihan
Dapatkan ciri baru terlebih dahulu
Sertai Office Insiders

Adakah maklumat ini membantu?

Terima kasih atas maklum balas anda!

Terima kasih atas maklum balas anda! Nampaknya ia mungkin akan membantu untuk menyambungkan anda kepada salah seorang daripada ejen sokongan Office kami.

×