Mệnh đề WHERE – Hỗ trợ của Microsoft

Chỉ định bản ghi từ các bảng được liệt kê trong mệnh đề FROM bị ảnh hưởng bởi câu lệnh SELECT, UPDATE hoặc DELETE.

Một biểu thức mà bản ghi phải đáp ứng được tích hợp vào kết quả truy vấn.

Tên của những bảng có dữ liệu được truy xuất từ đó.

Tên của những trường cần truy xuất cùng với mọi biệt danh tên trường, các vị từ chọn (ALL, DISTINCT, DISTINCTROW hoặc TOP) hoặc các tùy chọn khác của câu lệnh SELECT.

Câu lệnh SELECT chứa mệnh đề WHERE có những phần sau đây:

Chú thích

Bộ máy cơ sở dữ liệu của Microsoft Access sẽ chọn các bản ghi đáp ứng điều kiện được liệt kê trong mệnh đề WHERE. Nếu bạn không chỉ định mệnh đề WHERE, truy vấn của bạn sẽ trả về mọi hàng từ bảng. Nếu bạn chỉ định nhiều bảng trong truy vấn và bạn không tích hợp mệnh đề WHERE hoặc mệnh đề JOIN, truy vấn của bạn sẽ tạo ra một Tích Descartes trong các bảng.

Không bắt buộc sử dụng WHERE nhưng khi được tích hợp, mệnh đề này sẽ theo sau FROM. Ví dụ: bạn có thể chọn toàn bộ nhân viên trong bộ phận bán hàng (WHERE Dept = ‘Sales’) hoặc tất cả khách hàng trong khoảng 18 đến 30 tuổi (WHERE Age Between 18 And 30).

Nếu bạn không sử dụng mệnh đề JOIN để thực hiện thao tác liên kết SQL trên nhiều bảng, đối tượng Recordset kết quả sẽ không được cập nhật.

Mệnh đề WHERE tương tự như mệnh đề HAVING. WHERE giúp xác định những bản ghi được chọn. Tương tự như vậy, sau khi các bản ghi được nhóm bởi mệnh đề GROUP BY, HAVING sẽ xác định bản ghi được hiển thị.

Sử dụng mệnh đề WHERE để loại bỏ bản ghi bạn không muốn nhóm bởi mệnh đề GROUP BY.

Sử dụng các biểu thức khác nhau để xác định những bản ghi sẽ trả về câu lệnh SQL. Ví dụ: câu lệnh SQL sau đây chọn tất cả nhân viên có lương trên $21.000:

SELECT LastName, Salary FROM Employees WHERE Salary > 21000;

Mệnh đề WHERE có thể chứa tối đa 40 biểu thức được liên kết bằng các toán tử lô-gic, như AndOr.

Khi bạn nhập tên trường có chứa một dấu cách hay dấu chấm câu, hãy đặt tên trong dấu ngoặc vuông ([ ]). Ví dụ: bảng thông tin khách hàng có thể bao gồm các thông tin về khách hàng cụ thể:

SELECT [Customer’s Favorite Restarant]

Khi bạn chỉ định tham đối criteria, nguyên dạng ngày phải có định dạng Hoa Kỳ, ngay cả khi bạn đang không sử dụng phiên bản Hoa Kỳ của bộ máy cơ sở dữ liệu Microsoft Access. Ví dụ: 10/05/1996, được viết thành 10/5/96 tại Vương quốc Anh và 5/10/96 tại Hoa Kỳ. Đảm bảo rằng bạn đưa dấu thăng (#) vào các nguyên dạng ngày như minh họa trong ví dụ sau đây.

Để tìm bản ghi 10/05/1996 trong cơ sở dữ liệu của Vương quốc Anh, bạn phải sử dụng câu lệnh SQL sau đây:

SELECT * FROM Orders WHERE ShippedDate = #5/10/96#;

Bạn cũng có thể sử dụng hàm DateValue để biết các cài đặt quốc tế do Microsoft Windows® thiết lập. Chẳng hạn, sử dụng mã này cho Hoa Kỳ:

SELECT * FROM Orders WHERE ShippedDate = DateValue(‘5/10/96’);

Và sử dụng mã này cho Vương quốc Anh:

SELECT * FROM Orders WHERE ShippedDate = DateValue(’10/5/96′);

Lưu ý: Nếu cột được tham chiếu trong chuỗi tiêu chí của loại GUID, biểu thức tiêu chí sẽ sử dụng cú pháp hơi khác nhau:

WHERE ReplicaID = {GUID {12345678-90AB-CDEF-1234-567890ABCDEF}}

Hãy nhớ đưa các dấu ngoặc lồng nhau và dấu gạch nối vào như đã minh họa.