SQL 함수 "단일 그룹 그룹 함수가 아니다" 설명
SQL에서 MAX 등 그룹 함수를 사용할 때 해당 함수는 단일 데이터 그룹에 적용해야 합니다. 즉, 특정 열의 최대값을 구하려면 해당 열별로 데이터도 그룹화해야 한다는 뜻입니다.
그러나 그룹화되지 않은 표현식에 그룹 함수를 적용하려고 하면, "단일 그룹 그룹 기능이 아닙니다."라는 오류가 표시됩니다. 예를 들어, 고객이 다운로드한 열이 포함된 downloads라는 테이블이 있다고 가정해 보겠습니다.
SELECT MAX(SUM(TIME)) FROM downloads GROUP BY SSN
이 쿼리는 MAX 함수가 데이터 그룹(SSN을 통한 다운로드)에 적용되므로 유효합니다. . 그러나 다음과 같이 select 문에 SSN 열을 추가하려고 하면
SELECT SSN, MAX(SUM(TIME)) FROM downloads GROUP BY SSN
SSN 열이 GROUP BY 절. 즉, SQL에서는 SSN 열이 속한 데이터 그룹을 확인할 수 없으므로 해당 열에 MAX 함수를 적용할 수 없습니다.
이 오류를 해결하려면 다음 세 가지 옵션이 있습니다.
SELECT SSN, MAX(SUM(TIME)) FROM downloads GROUP BY SSN, TIME
이렇게 하면 최대 총 다운로드 시간이 제공됩니다. 각각의 고유한 SSN 및 시간 조합에 대해.
위 내용은 내 SQL 쿼리가 '단일 그룹 그룹 함수가 아님' 오류를 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!