4
금요일 시작일을 기준으로 주별 보고서를 만드는 데 도움이되는 다음 코드가 있습니다. 지시 사항은 ". $ startWeekDay"를 대체합니다. 4. '$ startDay.' '를'2013-01-30 '로 입력하면 오류가 발생합니다.주간 MySQL 시작 날짜 변경
또한 원하는대로 일주일에 한 번씩 보고서를받습니다.
SELECT SUM(cost) AS total,
CONCAT(IF(date - INTERVAL 6 day < '".$startDay."',
'".$startDay."',
IF(WEEKDAY(date - INTERVAL 6 DAY) = ".$startWeekDay.",
date - INTERVAL 6 DAY,
date - INTERVAL ((WEEKDAY(date) - ".$startWeekDay.")) DAY)),
' - ', date) AS week,
IF((WEEKDAY(date) - ".$startWeekDay.") >= 0,
TO_DAYS(date) - (WEEKDAY(date) - ".$startWeekDay."),
TO_DAYS(date) - (7 - (".$startWeekDay." - WEEKDAY(date)))) AS sortDay
FROM daily_expense
WHERE date BETWEEN '".$startDay."' AND '".$endDay."'
GROUP BY sortDay;
다음 코드는 내가 일주일에 의해
SELECT count(DISTINCT (
UserID)
) AS total, CONCAT(IF(date(LastModified) - INTERVAL 6 day < date(LastModified),
date(LastModified),
IF(WEEKDAY(date(LastModified) - INTERVAL 6 DAY) = 4,
date(LastModified) - INTERVAL 6 DAY,
date(LastModified) - INTERVAL ((WEEKDAY(date(LastModified)) - 4)) DAY)),
' - ', date(LastModified)) AS week
FROM `Purchase`
WHERE `OfferingID` =87
AND `Status`
IN (1, 4)
그룹을 사용하고 무엇
내가 얻을 출력은
total week
3 2013-01-30 - 2013-01-30
1 2013-01-31 - 2013-01-31