2012-10-04 2 views
4

아닌 적어도 하나 개의 열을 포함한다. 이 오류 메시지는 gettign입니다.GROUP-BY 식 I이 쿼리가 외부 참조

각 GROUP BY 식은 적어도 하나의 외부 참조가 아닌 열을 포함해야합니다.

해결할 수 있습니까? 오기 'MS SQL 서버 내부 2008

+1

무엇을하려고합니까? SQL Server에서 열 서수로 그룹화 할 수 없습니다. 이름을 지정해야합니다. –

답변

3

당신은 시도 1

에 의해 그룹을 줄 수

SELECT 
SolutionName -- Solution_NAM 
from Table_View 
Group By SolutionName 
+0

thx, 그것은 작동합니다! – Dantes

0

당신이> < 확실히 대신 열 서수를 사용할 수 있지만 GROUP BY에 대한 마틴의 문은 정확 여러 버전의 SQL에서 ORDER BY의 열 이름을 사용합니다 (대부분의 핵심 SQL 구문에서 ISO 표준 인 TSQL을 사용하고 있습니다).

그러나 작동하는 경우에도 ORDER BY 문에서 열 서수를 사용하지 않는 것이 좋습니다. 왜? 쿼리가 저장된 proc의 일부이고 원본 테이블 (또는 뷰)에 열을 추가하여 테이블 스키마가 변경된 경우 원래 열 순서가 변경에 의해 유지된다는 보장이 없습니다. 의도하지 않은 무의미한 칼럼으로 주문할 수 있다는 것을 의미합니다.

매번 ordine이 아닌 column 이름을 사용하는 것이 훨씬 더 좋습니다 (count (*)와 같지만 자신 만의 용도로 ad-hoc 질의를하면 결코 그 빛을 보지 못할 것입니다). 하루 생산).