의 난이 MySQL의 테이블이 있다고 가정하자SUM 다른 열은 같은 값이있는 열
id place_id area_mq n
-- -------- ------- --
1 1 50 1
2 2 90 1
3 2 20 1
4 3 10 1
5 3 10 2
6 3 10 3
7 4 20 1
8 4 20 2
9 5 15 1
10 5 25 1
id
기본 키, 지역 ID에 대한 place_id
스탠드, area_mq
입니다 MQ에서 장소의 면적입니다 .
나는이 규칙 area_mq
의 합을 계산하는 컴팩트 한 쿼리를 찾을 수 있습니다 무엇을해야 : n
이 같은 place_id
에 대한 동일입니다
- 경우, 다음에 대한 모든
area_mq
(f.ex을 계산place_id
= 2, I는 012,334을 계산 한 다음,이 동일한n
place_id
위한 다른인 경우 - ) 합계 90 및 20 카운트 (가능한 이러한 종류의 "장소"때문에 값이 동일합니다; f.ex.
place_id
= 4, 두 개의 20이 있습니다. 합이 20이고 40이 아닙니다.)
이 예제에서 정확한 합계는 50 + (90 + 20) + 10 + 20 + (15 + 25)입니다.
쿼리 (코드 또는 절차 없음)를 사용하여이를 수행 할 수 있습니까? n에 대한 요구 사항이 취소 된 경우 GROUP BY와 하위 쿼리를 사용하면 간단 할 것입니다. 그러나이 조건을 사용하면 방해가됩니다.
당신이 원하는 N = 1 개 항상 n 값을 사용하는 것입니다 here을 테스트? – Manuel
아니오 @ dragon112, 임의 일 수 있습니다. – Cranio