DB에 많은 데이터가 있습니다. 나는 MySQL을 사용하고있다. 데이터가 두 번 할 내가 보여표시를 위해 왼쪽 가입을 사용하십시오. 3 주 데이터가 잘못되었습니다.
line count
fa 01 0.0000
fa 01 0.0000
fa 02 0.0000
fa 02 0.0000
fa 03 0.0000
fa 03 0.0260
그것은 만드는 :로
SELECT Line, (SUM(S) + SUM(A) + SUM(B)*0.4 + SUM(C)*0.1)/COUNT(Serial_number) AS 3rd
FROM inspection_report
WHERE DAY(Inspection_datetime) BETWEEN 15 AND 21
GROUP BY Line, WEEK(Inspection_datetime), YEAR(Inspection_datetime)
하지만 결과 쇼 :이 경우에 대한
, 내가 어떤 쿼리를 사용하여 3 주간의 데이터를 표시하려고SELECT id,A.Line,week3.3rd
FROM inspection_report AS A
LEFT JOIN(
SELECT Line, (SUM(S) + SUM(A) + SUM(B)*0.4 + SUM(C)*0.1)/COUNT(Serial_number) AS 3rd
FROM inspection_report
WHERE DAY(Inspection_datetime) BETWEEN 15 AND 21
GROUP BY Line, WEEK(Inspection_datetime), YEAR(Inspection_datetime)
) AS week3 USING (Line)
WHERE MONTH(Inspection_datetime) = MONTH(CURRENT_DATE)
AND YEAR(Inspection_datetime) = YEAR(CURRENT_DATE)
GROUP BY Line
하지만 같은 결과 쇼 :이 쿼리를 시도
,536,913,632 10line count
fa 01 0.0000
fa 02 0.0000
fa 03 0.0000 //must be 0.0260
어떻게 해결해야합니까? 고맙습니다
첫 번째 시도에서 GROUP BY 주와 년을 삭제할 수 없습니까? (라인별로 그룹화). –
첫 번째 쿼리에 연도를 출력 열로 추가하는 것으로 시작하므로보고있는 내용이 명확합니다. 이 경우에는 – Murph