2010-05-04 2 views

답변

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

사용자가 생성 된 시간을 무시하려면 다음을 사용할 수 있습니다. Quassnoi의 예제 쿼리를 오후 2시에 실행하면 오전 8시에 누군가가 생성됩니다.

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

사용 DATE (user_datecreated) 테이블이 증가 할 때 쿼리가 정말 느리게 만드는 컬럼에 어떤 인덱스를 사용하는 mysql을 방지 할 수 있습니다.

"3 개월 전"날짜에서 시간을 삭제하면 해당 날짜를 만든 모든 사용자가 해당 조건과 일치하므로 사용자 작성 시간을 무시할 필요가 없습니다.

SELECT * 
FROM users 
WHERE user_datecreated >= DATE(NOW() - INTERVAL 3 MONTH); 
관련 문제