다음과 같이 시도해보십시오. 특정 데이터에 대해 교차하는 것을 가지고 놀아야 할 수 있습니다. 데이터가 없으면 테스트하기가 어렵습니다.
case
when
sum([Pay in 2015]) over (intersect([CustomerID],[Amount],[Date of Payment])) >= 2
and
sum([Reimburse in 2016]) over (intersect([CustomerID],[Amount],[Date of Payment])) >= 2
then 2
else 0
end
가 나는 각각의 충전 및 보상에 대한 고유 식별자없이 할 수있는 방법이 표시되지 않는 데이터를보고 한 후 편집
. 예를 들어 붙여 넣은 데이터에는 4 가지 요금이 있습니다. 2는 80, 2는 -80을 의미합니다. 그러나 동일한 자연과 목적을 위해 80 개가 또 다른 것이 있다면 어떨까요? 마지막 두 가지 혐의를 무시하면서 두 가지 빚에 대해 두 가지 크레딧을 좋아할 수있는 표현은 없습니다. 일반적으로 ItemID 또는 청구에 대한 고유 식별자를 지정하는 항목이 필요합니다. 그렇지 않으면 누군가가 80 달러 또는 150 달러의 계좌를 개설 할 수 있으며, 어떤 특정 상품 (여행 쿠폰 등)을 알려주는 실제 방법이 없습니다.
최선의 방법은 고객을 전체적으로 살펴본 후 청구 된 총 금액과 청구 된 총 금액을 비교하는 것입니다. 단, 각 행을 조정하는 것은 고유 한 청구 ID/쿠폰 ID/등
죄송합니다.
거기에 윈도우 기능이 없으므로 'over' 절을 사용할 수 없습니다. 성취하고자하는 바를 정확히 설명해 주시겠습니까? 어떤 맥락은 우리가 질문을 이해하고 궁극적으로 당신을 가질 수 있도록 도와 줄 것입니다. – Mureinik
@Mureinik : 응답 해 주셔서 감사합니다. 설명을 돕기 위해 내가 성취하고자하는 것을 그림으로 첨부했습니다. 달성하려는 목표는 [2015 년에 지불]에 1이 있고 [2016 년 상환]에 1이 있고 [고객 ID]가 동일하게 유지되면 새 열에 "2"가 표시됩니다. "0"도움을 주셔서 감사합니다 –
이 도움이되지만 여전히 잘 모르겠다. 출력을 어떻게 보이게할까요? 이 쿼리에 다른 열을 추가하거나 집계하는 것입니까? – Mureinik