매일 등록한 사용자의 합계를 반환하는 쿼리가 있습니다. 문제는 아무런 값도 반환하지 않는 아무도 등록하지 않았다면 그냥 건너 뜁니다. 나는 오히려이 지금까지결과가없는 날에 0을 반환합니다.
SELECT count(*) total FROM users WHERE created_at < NOW() AND created_at >
DATE_SUB(NOW(), INTERVAL 7 DAY) AND owner_id = ? GROUP BY DAY(created_at)
ORDER BY created_at DESC
편집
내가 날짜 범위에 관해서는 각 기념일의 수를 얻을 것입니다 그래서 데이터를 그룹화 내 쿼리 제로
을 반환 것 지난 7 일 동안 등록 된 총 사용자 수를 원했습니다.
가하는 일의 설정 라이브 데모를 참조하십시오 ... 정신인가? 항상? 그것은 큰 결과 집합이 될 것입니다. 당신은 일별 그룹화를하고 있습니다 - 그룹핑은 일반적으로 특정 그룹 키에 대한 그룹이없는 곳의 항목을 반환하지 않습니다. –
그냥 말하고 싶습니다. 앱 로직이 이것을 할 수 없습니까? SQL 쿼리가 반환하는 데이터가 적을수록 좋습니다. 적은 데이터 = 빠름. 귀하의 애플 리케이션 로직이 쉽게 할 수 확신합니다. SQL을 수행 할 수 있다고 확신합니다. 효율성이 떨어지며 필요가 있습니까? – Jimmy
[캘린더 테이블] (http://crazycoders.net/2012/03/using-a-calendar-table-in-mysql/)을 사용하십시오. –