1
내가 실행중인 문제는이 쿼리를 실행할 때 현재 날짜 (현재 날짜에서 7 일)에서 1 주 간격으로 시작하는 것입니다. 나는 이전 10 주 (일 - 월)를 모두하고 싶다. 따라서 현재 날짜가 월요일, 화요일 또는 수요일 인 경우 가장 최근 일요일에 시작한 다음 이전 10 주를 다시보고 싶습니다.MySql SELECT WHERE 날짜가 지난 10 주보다 큰 경우 (일요일부터 시작)
SELECT
SUM(MT.QUANTITY) as qty,
WEEKDAY(MT.TRANS_DATE) AS WEEKDAY,
WEEK(MT.TRANS_DATE) AS WEEK,
YEAR(MT.TRANS_DATE) AS YEAR
FROM
mytable MT
WHERE
MT.TRANS_DATE > DATE_SUB(CURDATE(), INTERVAL 10 WEEK)
GROUP BY WEEK
+1 "이번 주 일요일"을 SUBDATE (CURDATE (CURDATE(), DAYOFWEEK (CURDATE()) - 1) 문자열 조작보다 읽기가 더 쉬운 FWIW로 계산합니다. 그러나 둘 다 상수이므로 실행에 차이를 두지 않아야합니다. – pilcrow
@pilcrow 당신의 방법을 포함하여 답변을 업데이트했습니다.) : ... – DarkAjax