MS Access - Sử dụng Query Wizards
Access gồm 4 loại truy vấn Wizard khác nhau, và chỉ có một nơi bạn có thể thấy tất cả các loại truy vấn đó. Chọn Query từ thực đơn Insert, Access hiển thị hộp thoại New Query như hình 1.
MS Access - Sử dụng Query Wizards
Access gồm 4 loại truy vấn Wizard khác nhau, và chỉ có một nơi bạn có thể
thấy tất cả các loại truy vấn đó. Chọn Query từ thực đơn Insert, Access
hiển thị hộp thoại New Query như hình 1.
Hình 1: Hộp thoại New Query.
Chú ý rằng có 5 tùy chọn được liệt kê trong hộp thoại. Tùy chọn đầu tiên (Design
View) không thực sự là một truy vấn, nó cho phép bạn tạo một truy vấn từ hỗn
hợp tự tạo. Mục đích của 4 tùy chọn còn lại như sau:
• Simple Query Wizard. Tùy chọn này cho phép bạn tạo truy vấn một cách đơn
giản nhất. Wizard này giống như khi bạn kích đúp chuột vào Create Query By
Using Wizard trong cửa sổ Database (hình 2).
Hình 2: Cửa sổ Database
• Crosstab Query Wizard. Tùy chọn này tạo một truy vấn Crosstab đơn giản, đã
trình bày ở đầu chương.
• Find Duplicates Query. Tạo một truy vấn lựa chọn hiển thị các bản ghi giống
nhau trong một bảng.
• Find Unmatched Query. Tạo một truy vấn mà hiển thị các bản ghi không có
mối quan hệ với bản ghi ở các bảng khác nhau. (Truy vấn này dễ sử dụng khi
làm việc với cơ sở dữ liệu quan hệ, một khái niệm sẽ được giới thiệu ở chương
13, “Tìm hiểu mối quan hệ dữ liệu”).
Truy vấn bạn lựa chọn sẽ quyết định Wizard nào được sử dụng bởi Access.
Trong các phần sau đây, bạn sẽ học cách sử dụng ba trong 4 Wizards được đưa
ra ở đây.
Tạo một truy vấn đơn giản
Để tạo một truy vấn đơn giản, chọn Simple Query Wizard từ hộp thoại New
Query, sau đó kích vào nút OK. Tương tự, bạn cũng có thể kích đúp chuột vào
tùy chọn Create Query By Using Wizard sẵn có khi nút Queries được lựa chọn
trong cửa sổ Database. Sau đó, Access hiển thị hộp thoại Simple Query Wizard
như hình 3.
Hình 3: Hộp thoại Simple Query Wizard.
Phía bên trái hộp thoại Simple Query Wizard, bạn có thể sử dụng danh sách xổ
xuống liệt kê để xác định những nguồn nào Access nên sử dụng cho truy vấn
mới. Chú ý rằng, bạn có thể sử dụng nguồn là các bảng hoặc các truy vấn khác.
Khi cơ sở dữ liệu Customers chỉ có duy nhất một bảng (bảng Business
Custormers), Access mặc định lựa chọn nó cho bạn. Nếu bạn đang làm việc với
cơ sở dữ liệu chứa các bảng và các truy vấn khác, bạn có thể sử dụng danh
sách xổ xuống để thay đổi những nguồn dữ liệu mà Wizard sử dụng.
Trong phần thấp hơn phía bên trái hộp thoại là danh sách của tất cả các trường
được xác định tại bảng hay truy vấn đã được chọn. Nếu bạn thay đổi nguồn dữ
liệu trong toàn bộ danh sách (được miêu tả ở đoạn trên) thì các trường sẵn có
sẽ thay đổi theo. Bạn có thể sử dụng danh sách và điều khiển phía bên phải
danh sách, để cho biết những trường nào bạn muốn được sử dụng vào truy vấn
bạn đang tạo ra.
Để minh họa cho ví dụ này, lựa chọn các trường Company Name, Address 1,
Address 2, City, State, và Zip code. Phải chắc chắn là sau khi chọn mỗi trường,
bạn phải kích chuột vào nút >. Sau đó, Access sẽ hiển thị tên mỗi trường trong
danh sách Selected Fields phía dưới bên phải hộp thoại. Khi hoàn thành việc lựa
chọn các trường, hộp thoại xuất hiện như hình 4.
Hình 4: Hộp thoại Simple Query Wizard sau khi lựa chọn một số trường.
Với các trường đã được chọn, bạn đã sẵn sàng để tiến hành bước tiếp theo
trong Wizard. Kích chuột vào nút Next, Access hiển thị hộp thoại như hình 5.
Đây là hộp thoại cuối cùng trong Wizard này.
Hình 5: Hộp thoại cuối cùng của Simple Query Wizard.
Tại giao diện này, bạn có thể nhập một tên bạn muốn sử dụng để lưu truy vấn
này. Tên được gợi ý đơn giản là tên bảng mà truy vấn đã dựa vào (Business
Customers) với từ “Query” được thêm vào. Truy vấn đơn giản bạn đã tạo sử
dụng hộp thoại trước có thể được sử dụng cho các nhãn thư, vì nó chỉ chứa
thông tin về địa chỉ cho danh sách các khách hàng. Nhập tên Address List, sau
đó kích chuột vào nút Finish. Access hiển thị kết quả truy vấn đó như hình 6.
Hình 6: Kết quả của Simple Query Wizard.
Tạo một truy vấn Crosstab
Để tạo một truy vấn Crosstab, đầu tiên mở hộp thoại New Query bằng cách
chọn Query từ thực đơn Insert. Từ hộp thoại đó, chọn Crosstab Query Wizard
và kích chuột vào nút OK. Access hiển thị hộp thọa Crosstab Query Wizard như
hình 7.
Hình 7: Hộp thoại Crosstab Query Wizard.
Phía trên cùng hộp thoại Crosstab Query Wizard, Access hỏi bạn lựa chọn bảng
nào muốn truy vấn dữ liệu. Vì cơ sở dữ liệu này chỉ có một bảng (Business
Customers), Access đã lựa chọn nó cho bạn. Nếu bạn đang làm việc với một cơ
sở dữ liệu có chứa các bảng và truy vấn khác, bạn có thể sử dụng vùng View ở
giữa hộp thoại để thay đổi nguồn dữ liệu mà Wizard đưa ra.
Phía dưới cùng hộp thoại, Wizard hiển thị cách truy vấn Crosstab đã được hoàn
thành. Access cập nhập trình bày này mỗi lúc bạn thực hiện thay đổi trong khi sử
dụng Wizard. Để chuyển sang hộp thoại tiếp theo, kích chuột vào nút Next (Hình
8).
Hình 8: Lựa chọn các dòng.
Truy vấn Crosstab cho phép bạn xác định kết quả hiển thị theo cả hàng và cột.
Sử dụng Wizard, bạn nên chỉ ra những trường muốn xuất hiện trong mỗi dòng.
Ví dụ, giả sử bạn muốn lập bảng về số tài khoản còn hoạt động và không còn
hoạt động. Trong danh sách Available Fields, bạn nên lựa chọn trường
Salesperson và kích chuột vào nút >. Chú ý rằng Wizard cập nhật mẫu crosstab
ở phía dưới cùng hộp thoại.
Tiếp theo, bạn nên chọn trường State và kích chuột vào nút >. Tiếp tục, Wizard
cập nhật mẫu crosstab ở phía dưới hộp thoại như hình 8.
Hình 9: Truy vấn crosstab sau khi lựa chọn tiêu đề hàng
Bạn chỉ thực hiện theo Access để hiển thị những người bán hàng và State phía
bên trái của crosstab. Kích chuột vào nút Next. Access hiển thị hộp thoại như
hình 10.
Hình 10: Lựa chọn cột
Trong hộp thoại này, Access hỏi bạn để lựa chọn những trường mà nó sẽ trình
bày thành các cột. Do bạn muốn truy vấn này chỉ cho biết có bao nhiêu tài khoản
còn hoạt động hay không đối với mỗi người bán hàng, bạn nên chọn trường
Active. Sau khi chọn trường Active, chú ý rằng Access cập nhật theo mẫu như ở
phía dưới hộp thoại. Kích chuột vào nút Next để thực hiện tiếp. Access hiển thị
hộp thoại như hình 11.
Hình 11: Lựa chọn các thao tác cho truy vấn.
Trong hộp thoại này, Access hỏi bạn để xác định những gì bạn muốn truy vấn
tính toán. Tại phía bên phải hộp thoại, hộp Functions liệt kê tất cả các phép tính
sẵn có khác nhau. Bạn có thể thực hiện nhiều phép tính trên nhiều trường, tuy
nhiên một vài sự kết hợp của các trường và các phép tính không thể thực hiện
được. Ví dụ, nếu bạn chọn một trường text, việc thực hiện tính trung bình không
thể làm được, bạn chỉ nên thực hiện tính toán trên một trường số hoặc trường
tiền tệ.
Để kết thúc truy vấn này, chọn trường Company Name và chọn phép tính
Count. Chú ý rằng thông tin trong vùng mẫu của hộp thoại thay đổi cùng với lựa
chọn của bạn. Truy vấn sẽ tính toán cách mà các tài khoản còn hoạt động hay
không (có một tên công ty cho mỗi tài khoản) có trong mỗi state cho mỗi người
đai diện bán hàng.
Cuối cùng, chú ý rằng có 1 hộp chọn bạn có thể sử dụng để cho biết truy vấn
cần cung cấp một tóm tắt cho mỗi dòng. Với một crosstab đơn giản là chỉ có 2
cột (active hoặc inactive) thì một bản tóm tắt có lẽ không cần thiết. Kích chuột
vào hộp chọn để tắt bản tóm tắt. Sau khi sự lựa chọn được hoàn thành, bạn có
thể kích chuột vào nút Next. Access sẽ hiển thị hộ thoại như hình 12.
Hình 12: Access hỏi bạn về tên truy vấn
Ở hộp thoại này, bạn hoàn thành việc tạo truy vấn và cần lưu nó lại. Access hỏi
bạn tên để sử dụng cho truy vấn này. Với các tên cho những phần khác của cơ
sở dữ liệu, bạn nên sử dụng một vài tên đã miêu tả, như Active Account Tally.
Gõ tên và kích chuột vào nút Finish. Access sẽ lưu truy vấn và cập nhật danh
sách truy vấn trong cửa sổ Database, sau đó mở truy vấn để hiển thị kết quả
vừa làm. Hình 13 hiển thị khi truy vấn được hoàn thành.
Hình 13: Kết quả của truy vấn.
Khi xem tại crosstab, một trong những điều đầu tiên mà bạn chú ý rằng các cột
có đề là -1 và 0. Nhớ rằng, trường Active là một trường có kiểu dữ liệu Yes/No,
có nghĩa là Access lưu giữ giá trị trường này như một trong hai số: -1 và 0. Như
vậy, những số này cũng hiển thị trong tiêu đề. Sau chương này, bạn sẽ học cách
thay đổi tiêu đề bằng cách thay đổi thuộc tính kết hợp với truy vấn.
Nếu bạn xem qua trường hợp lạ này trong phần tiêu đề, bạn có thể thấy rằng,
crosstab cung cấp thông tin mà bạn đã yêu cầu. Nó hiển thị tình trạng tài khoản
trên active (Yes hoặc -1) và inactive (No hoặc 0) cho mỗi state và rep. Crosstab
Query Wizard rất dễ dàng cho bạn tạo truy vấn dữ liệu.
Tạo một Find Duplicates Query
Bạn cũng có thể sử dụng hộp thoại New Query để tạo một truy vấn Find
Duplicates, nó cho phép bạn nhanh chóng tìm kiếm một bảng có các trường
trùng nhau. Chọn Find Duplicates Query Wizard trong hộp thoại và kích chuột
vào nút OK. Lần lượt, Access hiển thị hộp thoại Find Duplicates Query Wizard
như hình 14.
Hình 14: Hộp thoại Find Duplicates Query Wizard.
Trong hộp thoại này, Access liệt kê các nguồn dữ liệu bạn có thể sử dụng cho
truy vấn. Thông thường, bạn sử dụng một bảng như nguồn dữ liệu nhưng với
Wizard này bạn cũng có thể sử dụng truy vấn khác nữa. Bởi vì bảng Business
Customers là duy nhất trong cơ sở dữ liệu Customers, Access đã lựa chọn bảng
này cho bạn. Kích chuột vào nút Next để chuyển tới hộp thoại như hình 15.
Hình 15: Chọn một trường để kiểm tra.
Trong hộp thoại này, Access hỏi bạn những trường nào cần kiểm tra giá trị trùng.
Mặc dù không có giới hạn về số các trường bạn có thể có trong kiểm tra truy
vấn, nhưng bạn cũng chỉ nên chọn những trường cần thiết để chắc chắn là
không có sự trùng lặp. Trong trường hợp của bảng Business Customers, chỉ cần
kiểm tra trường Company Name và Contact để xác định nếu có sự trùng lặp.
Đầu tiên, chọn trường Company Name và kích chuột vào nút >. Tiếp theo, chọn
trường Contact và kích tiếp vào nút >. Access hiển thị hai trường theo thứ tự
trong danh sách phía bên phải hộp thoại. Sau khi xác định xong các trường, kích
chuột vào nút Next. Access hiển thị hộp thoại như hình 16.
Hình 16: Hiển thị thông tin thêm.
Trong hộp thoại này, Access hỏi nếu bạn muốn truy vấn hiển thị thêm thông tin.
Khi xem lại các bản ghi trùng, bạn có thể sử dụng thông tin này nhằm giúp việc
quyết định bản ghi nào muốn lưu và bản ghi nào muốn xóa. Đối với bảng
Business Customers, bạn muốn Access hiển thị các trường Contact Phone, Last
Order, Salesperson. Chọn một vài trường (nhớ kích nút > sau khi chọn mỗi
trường). Access thêm tên của mỗi trường vào danh sách phía bên phải hộp
thoại. Khi hoàn thành, kích chuột vào nút Next, Access hiển thị hộp thoại như
hình 17.
Hình 17: Kết thúc truy vấn.
Lúc này bạn đã hoàn thành việc tạo truy vấn, Access yêu cầu bạn đặt tên cho
truy vấn. Từ gợi ý của Wizard cho tên của truy vấn này, kích chuột vào nút
Finish để chấp nhận tên đó. Access lưu truy vấn dưới tên này và cập nhật danh
sách truy vấn trong cửa sổ Database. Access mở truy vấn để hiển thị kết quả
vừa hoàn thành như hình 18.
Hình 18: Kết quả của truy vấn Find Duplicates.
Bây giờ bạn có thể xem lại các bản ghi trùng lặp và quyết định những việc muốn
làm với chúng. Nếu bạn xóa bất kỳ bản ghi nào trong màn hình, Access sẽ xóa
bản ghi tương ứng trong bảng phía bên dưới (Business Customers). Với lý do
này, truy vấn Find Duplicates rất có ích trong việc quản lý thông tin ở bảng.