2011-11-17 3 views
0

지난 7 일 동안 특정 날짜에 발생한 주문 합계를 그래프로 표시하려고 시도했지만 특정 날짜에 대한 주문이없는 경우 문제가 발생했습니다. 쿼리는 값이나 날짜 따라서 배열을 반환하지 미만 7MYSQL : 계산에 null 값을 사용하여 주문 집계

SELECT IFNULL(COUNT(*),0) as purchase_count, DATE(tb_order.order_date) as order_date 
       FROM tb_order_attendee_info 
       JOIN tb_order on tb_order.order_id = tb_order_attendee_info.order_id 
       JOIN tb_events on tb_events.event_id = tb_order.event_id 
       WHERE tb_order_attendee_info.refunded='N' AND order_date between DATE_SUB(now(), interval 10 day) and now() 
       GROUP BY DATE(tb_order.order_date)"; 
필자는 내가 그것을 구매 수와 증가 된 제로 값으로 배열을 반환받을 수있는 방법을 해결하려고 노력하고

불행히도 카운트가 0보다 큰 날짜 만 반환합니다.

답변

1

결과 행을 자료. 이것은 단지 불가능합니다 (Stored Procedure을 사용하지 않고). 날짜를 반복 할 수 없기 때문에 SQL에 for 루프가 없습니다.

가까운 곳에서 얻을 수있는 것은 결과에 넣고 싶은 모든 날짜의 (임시) 테이블을 생성/생성 한 다음이 테이블에 가입하는 것입니다.