Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySQL - DATE_ADD khoảng tháng

DATE_ADD hoạt động tốt với các tháng khác nhau. Vấn đề là bạn đang thêm sáu tháng vào 2001-01-01 và ngày 1 tháng 7 được cho là sẽ ở đó.

Đây là những gì bạn muốn làm:

SELECT * 
FROM mydb 
WHERE creationdate BETWEEN "2011-01-01" 
                   AND DATE_ADD("2011-01-01", INTERVAL 6 MONTH) - INTERVAL 1 DAY
GROUP BY MONTH(creationdate)

HOẶC

SELECT * 
FROM mydb 
WHERE creationdate >= "2011-01-01" 
AND creationdate < DATE_ADD("2011-01-01", INTERVAL 6 MONTH)
GROUP BY MONTH(creationdate)

Để tìm hiểu thêm, hãy xem tài liệu DATE_ADD .

* đã chỉnh sửa để đúng cú pháp



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mảng PDO SHOW TABLES

  2. tổng kết bản ghi hoạt động trong codeigniter

  3. Lỗi 1046 Không có cơ sở dữ liệu được chọn, làm thế nào để giải quyết?

  4. chuyển đổi ngày php sang định dạng mysql

  5. mysql Đếm nhiều lần xuất hiện của các mục được ghép