MySQL에서 SUM 및 COUNT를 사용한 조건부 집계
관계형 데이터베이스로 작업할 때 데이터를 요약하기 위해 조건부 집계를 수행해야 하는 경우가 많습니다. 특정 기준에 따라. MySQL은 IF() 및 CASE 문 사용을 포함하여 이를 달성하기 위한 여러 가지 방법을 제공합니다.
IF() 문 사용
귀하의 예에서는 다음을 시도했습니다. IF() 문을 사용하여 종류가 1인 행의 개수를 계산합니다. 그러나 MySQL은 SUM 및 같은 집계 함수에서 IF() 문을 사용하는 것을 허용하지 않습니다. 세다. 이는 IF()가 스칼라 값을 반환하는 반면 집계 함수에는 입력으로 열 표현식이 필요하기 때문입니다.
CASE 문 사용
조건부 집계를 수행하려면 다음을 수행하세요. CASE 문을 사용하세요. CASE 문을 사용하면 여러 조건을 지정하고 해당 조건에 따라 다른 값을 반환할 수 있습니다.
다음 쿼리에서는 CASE 문을 사용하여 종류가 1인 행 수를 계산합니다.
SELECT COUNT(id), SUM(hour) AS totHour, SUM(CASE WHEN kind = 1 THEN 1 ELSE 0 END) AS countKindOne FROM your_table;
이 쿼리에서:
위 내용은 MySQL에서 SUM 및 COUNT를 사용하여 조건부 집계를 수행하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!