Я пытался отобразить таблицу результатов для еженедельных продаж с использованием MySQL, где результаты недели должны быть такими:
Sun - Mon - Tues - Wed - Thur - Fri - Sat
Итак, я использовал этот запрос:
SELECT DATE_FORMAT(cart_calendar.datefield, '%d-%b') AS DATE
, IFNULL(SUM(cart_daily_sales.quantity),0) AS total_sales
FROM cart_daily_sales
RIGHT JOIN cart_calendar
ON (DATE(cart_daily_sales.order_date) = cart_calendar.datefield)
WHERE (cart_calendar.datefield)
GROUP BY WEEK(cart_calendar.datefield)
Я знаю, что я почти на месте, так как выводятся все 52 недели в году, я хочу получить результат только текущей недели, в отличие от приведенного выше кода, который приводит к этому ...
'02-Jan', '09-Jan', '16-Jan', '23-Jan', '30-Jan', '06-Feb', '13-Feb', '20-Feb', '27-Feb', '06-Mar' e.t.c....
Я знаю, что могу использовать оператор BETWEEN для текущей даты и затем -7 дней, но это не показывает текущую неделю, если сегодняшний день - среда, он покажет последние семь дней до последних недель среды, а не правильную неделю структура. * +1010 *
Как отобразить сгруппированные за неделю продажи за неделю?