Ví dụ về dùng ngày tháng làm tiêu chí trong truy vấn Access
Applies ToAccess cho Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Để tìm hiểu thêm về việc tạo truy vấn, hãy xem Giới thiệu truy vấn.

Đây là một vài ví dụ chung về tiêu chí ngày, từ bộ lọc ngày đơn giản đến các tính toán có phạm vi ngày phức tạp hơn. Vài ví dụ phức tạp hơn dùng hàm date của Access để trích xuất ra các phần khác nhau của ngày nhằm giúp bạn lấy được kết quả mà bạn muốn.

Ví dụ về dùng ngày hiện tại trong tiêu chí của truy vấn

Để bao gồm các mục...

Hãy dùng tiêu chí này

Kết quả truy vấn

Chứa ngày hôm nay

Date()

Trả về các mục là ngày hôm nay. Nếu ngày hôm nay là 2/2/2012, bạn sẽ thấy các mục có trường ngày đặt là ngày 2 tháng 2, 2012.

Chứa ngày hôm qua

Date()-1

Trả về các mục có ngày hôm qua. Nếu ngày hôm nay là 2/2/2012, bạn sẽ thấy các mục cho ngày 1 tháng 2, 2012.

Chứa ngày mai

Date() + 1

Trả về các mục có ngày mai. Nếu ngày hôm nay là 2 tháng 2,2012, bạn sẽ thấy các mục cho ngày 3 tháng 2, 2012.

Chứa ngày trong tuần hiện tại

DatePart("ww", [SalesDate]) = DatePart("ww", Date()) and Year( [SalesDate]) = Year(Date())

Trả về các mục có ngày trong tuần hiện tại. Một tuần trong Access bắt đầu vào ngày Chủ nhật và kết thúc vào ngày Thứ bảy.

Chứa ngày trong tuần trước

Year([SalesDate])* 53 + DatePart("ww", [SalesDate]) = Year(Date())* 53 + DatePart("ww", Date()) - 1

Trả về các mục có ngày trong tuần trước. Một tuần trong Access bắt đầu vào ngày Chủ nhật và kết thúc vào ngày Thứ bảy.

Chứa ngày trong tuần sau

Year([SalesDate])* 53+DatePart("ww", [SalesDate]) = Year(Date())* 53+DatePart("ww", Date()) + 1

Trả về các mục có ngày trong tuần sau. Một tuần trong Access bắt đầu vào ngày Chủ nhật và kết thúc vào ngày Thứ bảy.

Chứa một ngày trong 7 ngày gần đây

Between Date() and Date()-6

Trả về các mục có ngày trong 7 ngày gần đây. Nếu ngày hôm nay là ngày 2/2/2012, bạn sẽ thấy các mục cho giai đoạn từ ngày 24 tháng 1, 2012 tới ngày 2 tháng 2, 2012.

Chứa một ngày trong tháng hiện tại

Year([SalesDate]) = Year(Now()) And Month([SalesDate]) = Month(Now())

Trả về các mục có ngày trong tháng hiện tại. Nếu ngày hôm nay là 2/2/2012, bạn sẽ thấy các mục cho tháng 2, 2012.

Chứa một ngày trong tháng trước

Year([SalesDate])* 12 + DatePart("m", [SalesDate]) = Year(Date())* 12 + DatePart("m", Date()) - 1

Trả về các mục có ngày trong tháng trước. Nếu ngày hôm nay là 2/2/2012, bạn sẽ thấy các mục cho tháng 1, 2012.

Chứa một ngày trong tháng sau

Year([SalesDate])* 12 + DatePart("m", [SalesDate]) = Year(Date())* 12 + DatePart("m", Date()) + 1

Trả về các mục có ngày trong tháng sau. Nếu ngày hôm nay là 2/2/2012, bạn sẽ thấy các mục cho tháng 3, 2012.

Chứa một ngày trong khoảng 30 hoặc 31 ngày trở lại đây

Between Date( ) And DateAdd("M", -1, Date( ))

Trả về giá trị tháng của các mục. Nếu ngày hôm nay là ngày 2/2/2012, bạn sẽ thấy các mục cho giai đoạn từ ngày 2 tháng 1, 2012 tới ngày 2 tháng 2, 2012.

Chứa một ngày trong quý hiện tại

Year([SalesDate]) = Year(Now()) And DatePart("q", [SalesDate]) = DatePart("q", Now())

Trả về các mục cho quý hiện tại. Nếu hôm nay là ngày 2/2/2012, bạn sẽ thấy các mục cho quý một của năm 2012.

Chứa một ngày trong quý trước

Year([SalesDate])*4+DatePart("q",[SalesDate]) = Year(Date())*4+DatePart("q",Date())- 1

Trả về các mục cho quý trước. Nếu hôm nay là ngày 2/2/2012, bạn sẽ thấy các mục cho quý cuối cùng của năm 2011.

Chứa một ngày trong quý sau

Year([SalesDate])*4+DatePart("q",[SalesDate]) = Year(Date())*4+DatePart("q",Date())+1

Trả về các mục cho quý sau. Nếu hôm nay là ngày 2/2/2012, bạn sẽ thấy các mục cho quý hai của năm 2012.

Chứa một ngày trong năm hiện tại

Year([SalesDate]) = Year(Date())

Trả về các mục cho năm hiện tại. Nếu ngày hôm nay là 2/2/2012, bạn sẽ thấy các mục cho năm 2012.

Chứa một ngày trong năm trước

Year([SalesDate]) = Year(Date()) - 1

Trả về các mục cho năm trước. Nếu ngày hôm nay là 2/2/2012, bạn sẽ thấy các mục cho năm 2011.

Chứa một ngày trong năm sau

Year([SalesDate]) = Year(Date()) + 1

Trả về các mục với ngày của năm sau. Nếu ngày hôm nay là 2/2/2012, bạn sẽ thấy các mục cho năm 2013.

Chứa ngày từ ngày 1 tháng 1 đến ngày hôm nay (mục năm-đến-ngày)

Year([SalesDate]) = Year(Date()) and Month([SalesDate]) <= Month(Date()) and Day([SalesDate]) <= Day (Date())

Trả về các mục có ngày từ ngày 1 tháng 1 của năm hiện tại đến ngày hôm nay. Nếu ngày hôm nay là ngày 2/2/12, bạn sẽ thấy các mục cho giai đoạn từ ngày 1 tháng 1, 2012 đến ngày 2/2/2012.

Chứa một ngày đã xảy ra trong quá khứ

< Date()

Trả về các mục có ngày trước ngày hôm nay.

Chứa một ngày sẽ xảy ra ở tương lai

> Date()

Trả về các mục có ngày sau ngày hôm nay.

Ví dụ về làm việc với ngày hoặc phạm vi ngày thay vì ngày hiện tại

Để bao gồm các mục...

Hãy dùng tiêu chí này

Kết quả truy vấn

Trùng khớp chính xác giá trị ngày, chẳng hạn như ngày 2/2/2012

#2/2/2012#

Chỉ trả về các mục với ngày 2 tháng 2, 2012.

Không khớp giá trị ngày, như ngày 2/2/2012

Not #2/2/2012#

Trả về các mục có ngày khác với ngày 2 tháng 2, 2012.

Chứa các giá trị trước một ngày nhất định như ngày 2/2/2012

< #2/2/2012#

Trả về các mục có ngày trước ngày 2 tháng 2, 2012.

Để xem các mục có ngày trước hoặc vào ngày 2 tháng 2, 2012, dùng toán tử dấu <= thay cho toán tử dấu < .

Chứa các giá trị sau một ngày nhất định như ngày 2/2/2012

> #2/2/2012#

Trả về các mục có ngày sau ngày 2 tháng 2, 2012.

Để xem các mục có ngày sau hoặc vào ngày 2 tháng 2, 2012, hãy dùng toán tử dấu>= thay cho toán tử dấu >.

Chứa các giá trị trong phạm vi ngày (giữa hai ngày)

>#2/2/2012# and <#2/4/2012#

Trả về các mục có ngày giữa ngày 2 tháng 2, 2012 và ngày 4 tháng 2, 2012.

Lưu ý: Bạn cũng có thể dùng toán tử Between để lọc một phạm vi giá trị bao gồm các điểm đầu cuối. Ví dụ: Between #2/2/2012# and #4/2/2012# cũng giống như >=#2/2/2012# and <=#4/2/2012#.

Chứa giá trị ngày nằm ngoài phạm vi

<#2/2/2012# or >#4/2/2012#

Trả về các mục có ngày trước ngày 2 tháng 2, 2012 hoặc sau ngày 4 tháng 2, 2012.

Chứa một trong hai giá trị ngày ví dụ như 2/2/2012 hoặc 3/2/2012

#2/2/2012# or #3/2/2012#

Trả về các mục có ngày hoặc là ngày 2 tháng 2, 2012 hoặc ngày 3 tháng 2, 2012.

Chứa từ một giá trị ngày trở lên

In (#1/2/2012#, #1/3/2012#, #1/4/2012#)

Trả về các mục có ngày 1 tháng 2, 2012, 1 tháng 3, 2012 hoặc 1 tháng 4, 2012.

Chứa ngày trong một tháng cụ thể (không tính đến năm), như tháng 12

DatePart("m", [SalesDate]) = 12

Trả về các mục có ngày nằm trong tháng 12 của bất cứ năm nào.

Chứa một ngày trong một quý cụ thể (không tính tới năm), như quý một

DatePart("q", [SalesDate]) = 1

Trả về các mục có ngày nằm trong quý đầu tiên của bất cứ năm nào.

Bộ lọc cho giá trị null (hoặc thiếu)

Is Null

Trả về các mục có ngày chưa được nhập.

Bộ lọc cho giá trị không phải là null

Is Not Null

Trả về các mục có ngày đã được nhập.

Ví dụ về lọc ngày giá trị null (thiếu) hoặc giá trị ngày không phải là null

Để bao gồm các mục...

Hãy dùng tiêu chí này

Kết quả truy vấn

Bộ lọc cho giá trị null (hoặc thiếu)

Is Null

Trả về các mục có ngày chưa được nhập.

Bộ lọc cho giá trị không phải là null

Is Not Null

Trả về các mục có ngày đã được nhập.

Bạn gặp vấn đề với tiêu chí ngày như không nhận được kết quả bạn mong đợi? Hãy xem Tiêu chí ngày không hoạt động trong truy vấn của tôi.

Bạn cần thêm trợ giúp?

Bạn muốn xem các tùy chọn khác?

Khám phá các lợi ích của gói đăng ký, xem qua các khóa đào tạo, tìm hiểu cách bảo mật thiết bị của bạn và hơn thế nữa.

Cộng đồng giúp bạn đặt và trả lời các câu hỏi, cung cấp phản hồi và lắng nghe ý kiến từ các chuyên gia có kiến thức phong phú.