Chúng tôi đã trừ ba ngày từ ngày đã cho bằng cách sử dụng hàm DATE_SUB[]. Thay cho NGÀY, chúng ta có thể sử dụng Tháng, năm, giờ, phút, giây, v.v., đây là danh sách
đơn vị Giá trị Expr được mong đợi. ________ Truy vấn thứ hai phụ thuộc vào ngày hôm nay, vì vậy kết quả của bạn sẽ khác.Đôi khi chúng tôi phải thu thập dữ liệu trong 7 hoặc 15 ngày hoặc X ngày [hoặc tháng, năm hoặc tuần] qua từ bảng MySQL.
Video hướng dẫn về truy vấn ngày bằng CURDATE, BETWEEN , YEAR, MONTH, DAYOFWEEK[]
Ví dụ: hãy để chúng tôi tìm ra ai là thành viên mới tham gia diễn đàn của chúng tôi vào tuần trước. Một cửa hàng có thể muốn biết các sản phẩm mới được thêm vào trong một tháng qua. Những cuốn sách đã đến trong một năm qua là gì. Ở đây, bất kể giá trị ngày là gì, chúng tôi muốn các bản ghi của X ngày trước kể từ hôm nay hoặc chúng tôi có thể nói rằng các bản ghi giữa hôm nay và X ngày trước [ tháng , năm hoặc tuần] là bắt buộc
Chúng ta sẽ sử dụng hàm MySQL CURDATE[] để lấy ngày hôm nay
Để có được sự khác biệt trong ngày hôm nay và ngày hoặc tháng trước đó, chúng ta phải sử dụng hàm MySQL DATE_SUB
DATE_SUB là một hàm MySQL lấy biểu thức ngày, khoảng thời gian và hằng số để trả về giá trị ngày để tính toán thêm
Trong hướng dẫn này, chúng ta sẽ nghiên cứu các hàm
8,Code language: SQL [Structured Query Language] [sql]
MONTH[date_value]
9 vàCode language: SQL [Structured Query Language] [sql]
MONTH[date_value]
0 của MySQL. Các hàmCode language: SQL [Structured Query Language] [sql]
YEAR[date_value]
8,Code language: SQL [Structured Query Language] [sql]
MONTH[date_value]
9 vàCode language: SQL [Structured Query Language] [sql]
MONTH[date_value]
0 được sử dụng rộng rãi khi truy xuất các giá trị ngày, tháng và năm tương ứng từ một giá trị ngày tháng. Tôi khuyến khích bạn thực hành các ví dụ khác nhau với các mệnh đề MySQL khác nhau
YEAR[date_value]
Code language: SQL [Structured Query Language] [sql]
Đây là hướng dẫn ngắn về cách lấy năm và tháng từ cột ngày trong MySQL. Để làm điều này, chúng tôi sẽ sử dụng chức năng EXTRACT, cho phép chúng tôi trích xuất các phần của một ngày
Dưới đây, bạn sẽ tìm thấy ảnh chụp màn hình của bảng MySQL có tên là “thành viên“
Như bạn có thể thấy, bảng có ba cột
- Id khóa chính
- Tên của thành viên
- Một cột ngày được gọi là date_registered
Giả sử chúng ta muốn đếm xem có bao nhiêu thành viên đã đăng ký và nhóm họ theo năm và tháng mà họ đã đăng ký?
SELECT EXTRACT[YEAR_MONTH FROM date_registered] AS year_month_registered, COUNT[*] AS num_registered FROM `members` GROUP BY year_month_registered
Các bạn chạy câu truy vấn SQL trên sẽ thấy nó trả về kết quả như sau
Như bạn có thể thấy, Năm và Tháng đã được lưu trữ ở định dạng YYYYMM với bí danh có tên là “year_month_registered. ”
Sử dụng DATE_FORMAT để lấy năm và tháng
Một cách khác là sử dụng hàm DATE_FORMAT. Điều này có thể đặc biệt hữu ích nếu bạn đang tìm kiếm một định dạng cụ thể. Ví dụ: nếu bạn muốn có dấu gạch nối để phân tách năm và tháng, thì bạn có thể sử dụng như sau
________số 8Truy vấn trên sẽ dẫn đến định dạng sau
Bạn thậm chí có thể nói với hàm DATE_FORMAT rằng bạn muốn MySQL trả về tên văn bản đầy đủ của tháng