MS Access - Trình hướng dẫn truy vấn chưa từng có
Trong Access, có một trình hướng dẫn khác rất hữu ích và đó là Find Unmatched Query Wizard. Trình hướng dẫn Truy vấn Tìm Chưa đối sánh tạo một truy vấn tìm các bản ghi hoặc hàng trong một bảng không có bản ghi liên quan trong một bảng khác.
Như chúng ta đã thảo luận về cách dữ liệu kết hợp với nhau trong các truy vấn và cách hầu hết các truy vấn đang tìm kiếm các kết quả phù hợp giữa hai hoặc nhiều bảng.
Đây là phép nối mặc định trong Access, chẳng hạn, nếu chúng ta thiết kế một truy vấn có hai bảng, tblCustomers và tblOrdersvà nối hai bảng đó bằng các ID khách hàng, truy vấn này sẽ chỉ trả về kết quả phù hợp. Nói cách khác, những khách hàng đã đặt hàng.
Chẳng hạn, đôi khi chúng tôi không muốn xem các trận đấu, chúng tôi có thể không muốn xem bất kỳ khách hàng nào trong cơ sở dữ liệu của mình - những khách hàng chưa đặt hàng.
- Đây chính xác là những gì truy vấn tìm kiếm không đối sánh thực hiện.
Có nhiều cách sử dụng có thể có khác cho loại truy vấn này.
Trong cơ sở dữ liệu của chúng tôi, chúng tôi có thể sử dụng nó để xem tác giả nào chưa viết dự án hoặc bạn có thể sử dụng nó để xem nhân viên nào chưa được bầu bất kỳ quyền lợi sức khỏe nào. Bây giờ hãy để chúng tôi mở cơ sở dữ liệu của bạn có chứaCustomers và Ordersbàn; chuyển đến tab Tạo và nhấp vào nút trình hướng dẫn truy vấn.
Chọn Find Unmatched Query Wizard và bấm vào Ok.
Trong trường hợp này, chúng tôi sẽ tìm ra những khách hàng chưa đặt hàng. Trong màn hình đầu tiên, nó hỏi bảng hoặc truy vấn nào chứa các bản ghi bạn muốn trong kết quả truy vấn.
Bây giờ chúng tôi muốn có một danh sách khách hàng từ tblCustomers. Chọn tùy chọn đó và nhấp vàoNext.
Trong màn hình sau, bạn cần chỉ định which table or query contains the related records. Nói cách khác, bạn đang sử dụng bảng nào để so sánh với bảng đầu tiên. Đối với điều này, chúng tôi cần phải tìm những người chưa đặt hàng. Chúng ta cần chọn bảng chứa thông tin về tất cả các đơn đặt hàng -tblOrders. Bây giờ, hãy nhấp vàoNext.
Trong màn hình sau đây, bạn cần chỉ định phần thông tin nào trong cả hai bảng.
- Đây thường sẽ là một số loại khóa chính, khóa ngoại, trường hoặc mối quan hệ.
- Nếu bạn có một mối quan hệ hiện có trong cơ sở dữ liệu của mình, Access sẽ chọn và đối sánh các trường đó cho bạn.
- Tuy nhiên, nếu bạn có các trường khác mà bạn có thể kết hợp với nhau, chứa thông tin tương tự, bạn cũng có thể chọn trường đó tại đây.
Ở đây, chúng tôi đã chọn CustID theo mặc định trong cả Trường trong 'tblCustomers' và Trường trong 'tblOrders'. Bây giờ, hãy nhấp vàoNext.
Trong màn hình sau đây, bạn có thể chọn và chọn các trường bạn muốn xem được hiển thị trong kết quả truy vấn.
Bây giờ chúng ta hãy chọn tất cả các trường có sẵn và nhấp vào mũi tên hai đầu. Điều này di chuyển tất cảavailable fields qua selected fieldskhu vực. Bây giờ, hãy nhấp vàoNext.
Màn hình cuối cùng sẽ cho phép bạn chọn tên cho truy vấn của mình và nhấp vào Finish.
Ở đây chúng tôi có một khách hàng được liệt kê là khách hàng đó chưa đặt hàng với chúng tôi.
Bạn cũng có thể xem cách truy vấn đó được tạo. Đối với điều này, bạn cần quay lạiDesign View.
Trình hướng dẫn này đã tạo ra một Outer Join giữa tblCustomer và tblOrders và Is Nulltiêu chí được thêm vào CustID từ tblORders. Điều này là để loại trừ các bản ghi nhất định. Trong trường hợp này, đó là những khách hàng đã đặt hàng, hoặc những người có thông tin liên quan trong tblOrders.