Hãy dùng thử!
Đôi khi, bạn cần tạo truy vấn để kéo thông tin từ các nguồn dữ liệu không có mối quan hệ trực tiếp (một với một hoặc một đối nhiều).
Dùng bảng trung gian để kết nối các nguồn dữ liệu trong truy vấn
Khi bạn chạy truy vấn, Access sử dụng các mối quan hệ mà bạn đã tạo giữa các bảng, đồng thời, Access sẽ suy ra và tạo kết nối giữa các nguồn dữ liệu khác. Nếu mối quan hệ bạn cần cho truy vấn không tồn tại, hãy kết nối các bảng như là một phần của truy vấn đó.
Giả sử bạn muốn xem có bao nhiêu đơn hàng bạn đã nhận được cho sản phẩm từ các nhà cung cấp khác nhau. Bảng Nhà cung cấp của bạn không được kết nối với bảng Chi tiết Đơn hàng của bạn, trong đó chứa ID sản phẩm và thông tin số lượng. Tuy nhiên, bảng Đơn đặt hàng được kết nối với bảng Chi tiết Đơn hàng.
Mẹo: Nếu có thể bạn cần mối quan hệ này bên ngoài truy vấn mà bạn đang tạo, tốt nhất bạn nên tạo mối quan hệ trung gian để dùng sau này. Để tìm hiểu cách thực hiện, hãy xem Tạo mối quan hệ nhiều-đến-nhiều.
Nếu bạn không muốn tạo bảng trung gian trong cơ sở dữ liệu của mình, hãy dùng bảng Đơn hàng làm bảng trung gian trong truy vấn của bạn. Thêm bảng Nhà cung cấp vào bên trái bảng Đơn hàng và tạo kết nối.
Bảng Đơn hàng kết nối hai bảng khác nhau, Nhà cung cấp và Chi tiết Đơn hàng. Kết nối các bảng sử dụng trường (như ID trong bảng Nhà cung cấp và ID Nhà cung cấp trong bảng Đơn hàng mua) đáp ứng các tiêu chí sau đây:
-
Hai trường này có kiểu dữ liệu khớp hoặc tương thích. Ví dụ: bạn không thể kết nối trường văn bản với trường số.
-
Các trường sẽ xác định các bản ghi khớp, duy nhất trong từng bảng. Ví dụ: bạn sẽ không muốn kết nối hai trường Họ vì họ không phải lúc nào cũng là duy nhất.
-
Các trường sẽ đảm bảo rằng kết quả bản ghi chính xác. Ví dụ: nếu bạn kết nối ID Nhà cung cấp với ID Mua hàng, bạn có thể nhận được một số kết quả trùng khớp nếu ID giống nhau. Nhưng kết quả sẽ không có ý nghĩa vì ID Nhà cung cấp không có gì thực hiện với ID Mua. Lựa chọn tốt hơn là kết nối ID từ bảng Nhà cung cấp với ID Nhà cung cấp trong bảng Đơn hàng —bản ghi được trả về sẽ có ý nghĩa vì cả hai trường đều xác định nhà cung cấp.
Các bước
Cho dù bạn có một bảng trung gian trong cơ sở dữ liệu của mình hay chỉ có kế hoạch dùng một bảng trong truy vấn của bạn, hãy làm theo các bước sau đây:
-
Thêm bảng trung gian vào truy vấn của bạn giữa hai bảng không kết nối.
-
Tạo bất kỳ kết nối cần thiết nào với bảng trung gian.
Các kết nối có thể sử dụng bất kỳ loại kết nối thích hợp nào nhưng phải được kết nối thông qua các trường đáp ứng các tiêu chí được mô tả trước đó trong mô-đun này.
-
Hoàn tất truy vấn.
Làm theo các bước thông thường để tạo truy vấn: thêm trường đầu ra, thêm tiêu chí bất kỳ và chạy hoặc lưu truy vấn của bạn. Để tìm hiểu cách thực hiện, hãy xem Tạo truy vấn cơ bản.
Lưu ý: Bạn không cần phải đưa bảng trung gian vào kết quả của mình. Access chỉ cần là một phần của nguồn dữ liệu truy vấn để Access có thể kết nối dữ liệu.