Lấy dữ liệu theo ngày trong MySQL


Định nghĩa và cách sử dụng

Hàm DATE() trích xuất phần ngày từ biểu thức ngày giờ

cú pháp

Giá trị tham số

Tham sốMô tảBiểu thứcBắt buộc. Một giá trị ngày/thời gian hợp lệ. Trả về NULL nếu biểu thức không phải là ngày hoặc giờ

chi tiết kỹ thuật


Thêm ví dụ

Thí dụ

Trích xuất phần ngày (sẽ trả về NULL)

SELECT DATE("Ngày là 15-06-2017");

Tự mình thử »

Câu hỏi rất thường gặp, cách chọn dữ liệu giữa hai ngày trong MySQL hoặc PHP. Có thể có nhiều cách để làm điều này, nhưng chúng ta sẽ thấy một số cách dễ dàng và tốt. Chung tôi hy vọng bạn thich no. Vì vậy, bạn đã sẵn sàng để làm điều đó?

Chọn dữ liệu từ cơ sở dữ liệu giữa hai ngày

01 Sử dụng BETWEEN…. VÀ…. Toán tử so sánh

Như tên gợi ý, Nó được sử dụng để kiểm tra xem một giá trị có nằm trong một phạm vi hay không.

Cú pháp.

`your_column_name` BETWEEN 'start-value' AND 'end-value'

Ví dụ về cú pháp

`order_date` BETWEEN '2020-04-05' AND '2020-04-10' // Retrun data including 05-04-2020 to 10-04-2020

`order_date` BETWEEN '2020-04-05' AND CURDATE() // Retrun data including 05-04-2020 to Current Date

Xin lưu ý rằng toán tử so sánh BETWEEN…AND… trả về các bản ghi bao gồm cả giá trị bắt đầu và kết thúc

Hãy xem một số ví dụ thực tế về GIỮA…VÀ…. toán tử so sánh

Tên bảng. đơn đặt hàng

Giả sử rằng bạn có bảng đơn đặt hàng sau trong cơ sở dữ liệu của mình và bạn muốn tìm nạp các bản ghi trong khoảng thời gian từ ‘2020-04-15’ đến ‘2020-04-30’

ID         | user_id| qty | order_date |
-----------+---------+-----+------------+
1          | 5      | 7   | 2020-04-06 |
2          | 7      | 14  | 2020-04-17 |
3          | 8      | 1   | 2020-04-20 |
4          | 100    | 5   | 2020-04-25 |
5          | 101    | 7   | 2020-04-30 |
6          | 17     | 8   | 2020-04-15 |
7          | 25     | 2   | 2020-05-25 |
8          | 24     | 1   | 2020-05-15 |
9          | 10     | 10  | 2020-05-28 |

Vì vậy, truy vấn sẽ giống như dưới đây

SELECT * FROM `order` WHERE `order_date` BETWEEN '2020-04-15' AND '2020-04-30'

đầu ra

ID         | user_id| qty | order_date |
-----------+---------+-----+------------+
2          | 7      | 14  | 2020-04-17 |
3          | 8      | 1   | 2020-04-20 |
4          | 100    | 5   | 2020-04-25 |
5          | 101    | 7   | 2020-04-30 |

02 Sử dụng > AND < Toán tử so sánh

Bạn cũng có thể sử dụng toán tử so sánh > (Lớn hơn) & < (Nhỏ hơn) để tìm nạp bản ghi giữa hai ngày.

Cú pháp.

`column-name` >= 'start-value' AND `column-name` <= 'end-value'

Vì vậy, truy vấn của bạn sẽ giống như bên dưới cho cùng một bảng thứ tự được đề cập ở trên

SELECT * FROM `order` WHERE `order_date` >= '2020-04-15' AND `order_date` <= '2020-04-30'

ví dụ

Ở đây, chúng tôi sẽ cho bạn thấy các ví dụ khác nhau về phạm vi ngày như chọn bản ghi giữa hai năm, tháng, v.v. Hãy xem nó

01 Chọn bản ghi giữa hai năm

Để chọn các bản ghi giữa hai năm, chúng ta cần trích xuất năm từ ngày để trong trường hợp này, hàm YEAR() sẽ được sử dụng. Bạn chỉ cần đặt ngày hoặc cột của mình bên trong hàm YEAR()

Giả sử bạn muốn tìm nạp tất cả các bản ghi trong khoảng thời gian từ 2019 đến 2020, vì vậy truy vấn của nó sẽ giống như bên dưới

SELECT * FROM `order` WHERE YEAR(order_date) BETWEEN '2019' AND '2020'

02 Chọn bản ghi giữa hai tháng

Để chọn các bản ghi giữa hai tháng, chúng ta cần trích xuất tháng từ ngày để trong trường hợp này hàm MONTH() sẽ được sử dụng. Bạn chỉ cần đặt ngày hoặc cột của mình bên trong hàm MONTH()

Giả sử bạn muốn tìm nạp tất cả các bản ghi của THÁNG 5 & THÁNG 6 để truy vấn của nó sẽ giống như bên dưới

________số 8

03 Chọn tất cả bản ghi trong khoảng thời gian từ hai tháng của năm cụ thể

SELECT * FROM `order` WHERE MONTH(order_date) BETWEEN '05' AND '06' AND YEAR(order_date) = '2020'

04 Chọn tất cả bản ghi của tháng cụ thể

`order_date` BETWEEN '2020-04-05' AND '2020-04-10' // Retrun data including 05-04-2020 to 10-04-2020

`order_date` BETWEEN '2020-04-05' AND CURDATE() // Retrun data including 05-04-2020 to Current Date
0

05 Chọn tất cả bản ghi của tháng hiện tại

`order_date` BETWEEN '2020-04-05' AND '2020-04-10' // Retrun data including 05-04-2020 to 10-04-2020

`order_date` BETWEEN '2020-04-05' AND CURDATE() // Retrun data including 05-04-2020 to Current Date
1

06 Chọn tất cả bản ghi của năm cụ thể

`order_date` BETWEEN '2020-04-05' AND '2020-04-10' // Retrun data including 05-04-2020 to 10-04-2020

`order_date` BETWEEN '2020-04-05' AND CURDATE() // Retrun data including 05-04-2020 to Current Date
2

07 Chọn Tất cả Bản ghi của Năm Hiện tại

`order_date` BETWEEN '2020-04-05' AND '2020-04-10' // Retrun data including 05-04-2020 to 10-04-2020

`order_date` BETWEEN '2020-04-05' AND CURDATE() // Retrun data including 05-04-2020 to Current Date
3

08 Chọn tất cả bản ghi của tháng cụ thể và năm cụ thể

`order_date` BETWEEN '2020-04-05' AND '2020-04-10' // Retrun data including 05-04-2020 to 10-04-2020

`order_date` BETWEEN '2020-04-05' AND CURDATE() // Retrun data including 05-04-2020 to Current Date
4

Đó là nó cho bây giờ. Chúng tôi hy vọng bài viết này đã giúp bạn chọn dữ liệu giữa hai ngày trong MySQL

Ngoài ra, hãy đọc hướng dẫn của chúng tôi

  1. Lỗi sau khi cấu hình thủ công php. bộ đệm trong Laravel
  2. Khóa được chỉ định là lỗi quá dài trong Laravel
  3. Yêu cầu bài đăng AJAX PHP với ví dụ
  4. Cách sử dụng Laravel Soft Delete
  5. Làm thế nào để thêm phân trang Laravel Next Prev
  6. lỗi cURL 60. Sự cố chứng chỉ SSL. không thể lấy chứng chỉ nhà phát hành địa phương
  7. Sự khác biệt giữa Factory và Seeder trong Laravel
  8. ấu trùng. Tăng Số Lượng Nếu Sản Phẩm Đã Có Trong Giỏ Hàng
  9. Cách Tính Tuổi Từ Ngày Sinh
  10. Cách chuyển đổi Base64 thành hình ảnh trong PHP
  11. Kiểm tra nếu một chuỗi chứa một từ cụ thể trong PHP
  12. Tự động điền vào các lựa chọn của trường được chọn trong ACF
  13. Cách tìm bản ghi trùng lặp trong cơ sở dữ liệu

Vui lòng cho chúng tôi biết trong phần nhận xét nếu mọi thứ hoạt động như mong đợi, các vấn đề của bạn hoặc bất kỳ câu hỏi nào. Nếu bạn nghĩ rằng bài viết này đã tiết kiệm thời gian và tiền bạc của bạn, vui lòng bình luận, chia sẻ, thích và đăng ký. Cảm ơn bạn trước 🙂 Giữ nụ cười. mã hóa hạnh phúc

Làm cách nào để lấy dữ liệu giữa hai ngày trong MySQL?

Để đếm sự khác biệt giữa các ngày trong MySQL, hãy sử dụng hàm DATEDIFF(ngày kết thúc, ngày bắt đầu) . Sự khác biệt giữa ngày bắt đầu và ngày kết thúc được biểu thị bằng ngày. Trong trường hợp này, ngày kết thúc là ngày đến và ngày bắt đầu là ngày khởi hành.

Getdate() trong MySQL là gì?

Hàm GETDATE được dùng để truy xuất thời gian hệ thống cơ sở dữ liệu hiện tại trong SQL Server . Một cách sử dụng phổ biến của GETDATE là lấy ngày hôm nay.

Làm cách nào tôi chỉ có thể lấy ngày từ cột ngày giờ trong SQL?

MS SQL Server - Làm cách nào để chỉ lấy Ngày từ giá trị ngày giờ? .
Sử dụng CHUYỂN ĐỔI sang VARCHAR. CHUYỂN ĐỔI cú pháp. CHUYỂN ĐỔI ( data_type [ ( độ dài ) ] , biểu thức [ , kiểu ] ).
Bạn cũng có thể chuyển đổi sang ngày. CHỌN CHUYỂN ĐỔI(ngày, ngày lấy()); . .
Sử dụng CAST

Làm cách nào để lấy ngày ở định dạng dd mm yyyy trong MySQL?

Sau đây là truy vấn để định dạng ngày thành YYYY-MM-DD. mysql> select str_to_date(LoginDate,'%d. %m .