GROUP BY 오류 문제 해결

다음 표는 GROUP BY 오류 메시지 및 이 오류 메시지를 해결하는 데 도움이 되는 제안 사항 목록을 보여 줍니다.

오류 번호

오류 메시지

오류 해결 방법

102

',' 근처의 구문이 잘못되었습니다.

그룹화 집합이 명시적 GROUPING SETS 목록의 일부로 GROUP BY 절에 나타나도록 쿼리를 다시 작성하십시오. 예를 들어 GROUP BY C1, (C2,…, Cn)과 같이 사용하면 이 오류가 발생합니다. GROUP BY C1, GROUPING SETS( (C2,…, Cn) ) 또는 GROUP BY C1, C2,…, Cn과 같이 쿼리를 다시 작성하십시오.

130

집계 또는 하위 쿼리가 포함된 식에서는 집계 함수를 수행할 수 없습니다.

그룹화 함수 집계 또는 하위 쿼리가 다른 그룹화 함수 또는 집계의 인수로 나타나지 않도록 쿼리를 다시 작성하십시오.

147

집계가 HAVING 절이나 SELECT 목록에 포함된 하위 쿼리 내에 없으면 WHERE 절에 나타날 수 없습니다. 또한 집계 중인 열은 외부 참조입니다.

WHERE 절에서 그룹화 함수 또는 집계를 제거하십시오.

157

집계는 UPDATE 문의 SET 목록에 나타날 수 없습니다.

UPDATE 문의 SET 목록에서 그룹화 함수 또는 집계를 제거하십시오.

158

집계는 OUTPUT 절에 나타날 수 없습니다.

OUTPUT 절에서 그룹화 함수 또는 집계를 제거하십시오.

162

TOP 절에 잘못된 식이 있습니다.

TOP 절에서 그룹화 함수 또는 집계를 제거하십시오.

174

GROUPING 함수에는 1개의 인수가 필요합니다.

인수가 정확히 한 개가 되도록 GROUPING () 함수의 인수 목록을 수정하십시오.

175

집계는 계산 열 식 또는 CHECK 제약 조건에 나타날 수 없습니다.

DDL 문의 계산 열과 CHECK 제약 조건에서 그룹화 함수 또는 집계를 제거하십시오.

189

GROUPING_ID 함수에는 0개에서 32개 사이의 인수가 필요합니다.

GROUPING_ID () 함수의 인수 개수를 32개 이하로 줄이십시오.

1015

집계가 HAVING 절이나 SELECT 목록에 포함된 하위 쿼리에 없으면 ON 절에 나타날 수 없습니다. 또한 집계 중인 열은 외부 참조입니다.

ON 절에서 그룹화 함수 또는 집계를 제거하십시오.

1028

GROUP BY ALL 절에는 CUBE, ROLLUP 및 GROUPING SETS 구문을 사용할 수 없습니다.

GROUP BY ALL 옵션이 GROUPING SETS, CUBE, ROLLUP, WITH CUBE 또는 WITH ROLLUP 키워드와 함께 지정되지 않도록 쿼리를 다시 작성하십시오.

4101

APPLY의 오른쪽에 있는 집계는 왼쪽에 있는 열을 참조할 수 없습니다.

APPLY 절의 오른쪽에서 그룹화 함수 또는 집계를 제거하십시오.

4113

GROUPING | GROUPING_ID는 잘못된 기간 이동 함수이며 OVER 절과 함께 사용할 수 없습니다.

GROUPING () 또는 GROUPING_ID () 함수가 OVER 절과 함께 사용되지 않도록 쿼리를 다시 작성하십시오.

4142

RECEIVE 목록에는 집계를 사용할 수 없습니다.

RECEIVE 목록에서 그룹화 함수 또는 집계를 제거하십시오.

5310

INSERT 문의 VALUES 목록에는 집계를 사용할 수 없습니다.

INSERT 문의 VALUES 목록에서 그룹화 함수 또는 집계를 제거하십시오.

8161

[GROUPING | GROUPING_ID] 함수의 인수 [n]이(가) GROUP BY 절의 어떤 식과도 일치하지 않습니다.

GROUPING 또는 GROUPING_ID 함수의 각 인수가 GROUP BY 절과 일치하며 GROUPING 또는 GROUPING_ID 함수의 모든 인수가 같은 범위를 사용하는지 확인하십시오.

다음 예의 경우 하위 쿼리에 있는 T 테이블(기본 쿼리에 있음)에 대한 참조에서 오류가 발생합니다.

SELECT T.b, SUM(T.x)
FROM T
GROUP BY T.b 
HAVING EXISTS
(SELECT 1
FROM T1
GROUP BY T1.a
HAVING 
GROUPING_ID(T1.a, T.b) = 1
)

8661

GROUP BY 절에 없는 열이 인덱스 키에 포함되었으므로 뷰 <viewname>에서 클러스터형 인덱스 <indexname>을(를) 만들 수 없습니다. GROUP BY 절에 없는 열을 인덱스 키에서 제거하십시오.

뷰 정의에 요소 (), 총합계만 포함하는GROUP BY 절이 포함된 경우 인덱싱된 뷰를 만들 수 없습니다.

10119

뷰 <viewname>에 CUBE, ROLLUP 또는 GROUPING SETS 연산자가 포함되어 있으므로 <indexname>을(를) 만들 수 없습니다. 이 뷰를 인덱싱하지 마십시오.

뷰 정의에 일반 GROUP BY 절이 포함된 경우 인덱싱된 뷰를 만들 수 없습니다.

10702

ROLLUP, CUBE 또는 GROUPING SETS 지정에는 WITH CUBE 및 WITH ROLLUP 옵션을 사용할 수 없습니다.

ISO가 아닌 WITH CUBE 또는 WITH ROLLUP 키워드와 ISO 호환 GROUPING SETS, CUBE 또는 ROLLUP 키워드가 함께 사용되지 않도록 쿼리를 다시 작성하십시오.

10703

그룹화 집합이 너무 많습니다. 최대 개수는 4096개입니다.

일반 GROUP BY 절의 그룹화 집합 수를 4096개 이하로 줄이십시오.

10706

GROUP BY 절에 지정된 식이 너무 많습니다. 그룹화 집합이 제공되는 경우 최대 개수는 32개입니다.

일반 GROUP BY 절의 고유 그룹화 요소를 32개 이하로 줄이십시오.

10708

현재 호환성 모드에서는 CUBE() 및 ROLLUP() 그룹화 구문을 사용할 수 없습니다. 100 모드 이상에서만 사용할 수 있습니다.

90 호환성 모드에서는 CUBE () 및 ROLLUP ()을 사용할 수 없습니다. WITH CUBE, WITH ROLLUP 또는 GROUPING SETS 구문을 사용하십시오.