2010-05-04 28 views

Trả lời

51
SELECT * 
FROM users 
WHERE user_datecreated >= NOW() - INTERVAL 3 MONTH 
10

Nếu bạn muốn bỏ qua thời gian trong ngày khi người dùng được tạo, bạn có thể sử dụng như sau. Vì vậy, điều này sẽ hiển thị một người nào đó được tạo lúc 8 giờ sáng nếu bạn chạy truy vấn ví dụ của Quassnoi lúc 2:00 chiều.

SELECT * 
FROM users 
WHERE DATE(user_datecreated) >= DATE(NOW() - INTERVAL 3 MONTH) 
2

Sử dụng DATE (user_datecreated) ngăn không cho mysql sử dụng bất kỳ chỉ mục nào trên cột, làm cho truy vấn thực sự chậm khi bảng phát triển.

Bạn không phải bỏ qua thời gian khi người dùng được tạo nếu bạn xóa thời gian khỏi ngày "3 tháng trước", vì tất cả người dùng đã tạo ngày đó sẽ khớp với điều kiện.

SELECT * 
FROM users 
WHERE user_datecreated >= DATE(NOW() - INTERVAL 3 MONTH); 
Các vấn đề liên quan