집 >데이터 베이스 >MySQL 튜토리얼 >SQL의 조건부 ValueDate를 기준으로 현금 거래를 어떻게 합산할 수 있습니까?
조건부 값 날짜를 사용하여 현금 거래 합계
대규모 SQL 문을 작업할 때 특정 조건에 대한 집계 값을 계산해야 하는 경우가 많습니다. 이 질문은 해당 ValueDates가 지정된 기간(예: 지난 달) 내에 포함된다는 조건으로 테이블의 현금 가치를 합산하는 SUM 함수 사용에 대해 다룹니다.
이를 달성하기 위해 코드는 ValueDate 필드를 평가하는 CASE 표현식을 포함하도록 SUM 함수를 수정합니다. ValueDate가 지난 달의 시작 날짜보다 이후인 경우 현금 가치가 합계에 포함됩니다. 그렇지 않으면 제외됩니다. 수정된 코드는 다음과 같습니다.
SUM(CASE WHEN ValueDate > @startMonthDate THEN cash ELSE 0 END)
이 업데이트된 코드는 지정된 범위 내의 ValueDates가 포함된 현금 값만 합계에 포함되도록 합니다. 부울 표현식을 평가하여 결과를 결정하는 검색된 CASE 표현식 구문을 사용하여 계산을 효율적으로 수행합니다.
성능이 문제가 될 경우 구문을 다시 작성하는 것이 좋습니다. 종속 하위 쿼리 대신 JOIN 및 GROUP BY. 이 접근 방식은 종종 복잡한 SQL 문의 실행 속도를 향상시킬 수 있습니다.
위 내용은 SQL의 조건부 ValueDate를 기준으로 현금 거래를 어떻게 합산할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!