SQL compute by 의 사용 분석 연구

2469 단어 SQLcomputeby
GROUP BY 자 구 는 되 돌아 오 는 결 과 는 합계 데이터 만 있 고 원본 의 상세 한 기록 은 없다 는 단점 이 있다.SQL SERVER 에서 이 작업 을 수행 하려 면 COMPUTE BY 자 구 를 사용 할 수 있 습 니 다.COMPTE 생 성 합 계 는 결과 집의 마지막 에 추 가 된 집계 열 로 나타난다.BY 와 함께 사용 할 때 COMPUTE 자 구 는 결과 집합 에서 제어 중단 과 분류 집합 을 생 성 합 니 다.
다음 SELECT 문 구 는 간단 한 COMPUTE 자 구 를 사용 하여 titles 표 에서 price 및 advance 의 구 와 총 계 를 생 성 합 니 다

USE pubs
SELECT type, price, advance
FROM titles
ORDER BY type
COMPUTE SUM(price), SUM(advance)
다음 조 회 는 COMPUTE 자구 에 선택 할 수 있 는 BY 키 워드 를 추가 하여 각 그룹의 소 계 를 생 성 합 니 다.
USE pubs

SELECT type, price, advance
FROM titles
ORDER BY type
COMPUTE SUM(price), SUM(advance) BY type
이 SELECT 문장의 결 과 는 12 개의 결과 집합 으로 되 돌아 가 며 6 개 그룹의 각 그룹 에 두 개의 결과 집합 이 있다.각 그룹의 첫 번 째 결과 집합 은 선택 목록 에서 요청 한 정 보 를 포함 하 는 줄 집합 입 니 다.각 그룹의 두 번 째 결과 집 은 COMPUTE 자구 에 있 는 두 개의 SUM 함수 의 소 계 를 포함한다.
compute by 자구 의 규칙:
(1)distinct 를 줄 통계 함수 와 함께 사용 할 수 없습니다.
(2)compute ??? by 자구 중??선택 목록 에 나 와 야 합 니 다.
(3)컴퓨터 by 자 구 를 포함 하 는 문장 에 select into 자 구 를 사용 할 수 없습니다.컴퓨터 자 구 를 포함 하 는 문 구 는 불규칙 한 줄 이 생 길 수 있 기 때 문 입 니 다.
(4)compute by 자 구 를 사용 했다 면 order by 자 구 를 사용 해 야 합 니 다.또한 compute by 자구 의 열 은 order by 자구 에 포함 되 어야 하 며,열의 앞 뒤 순서 와 시작 항목 이 일치 해 야 합 니 다.
(5)compute 가 by 를 생략 하면 order by 도 생략 할 수 있다.
(6)compute by 자구 에 여러 열 이 포함 되 어 있 을 때 한 그룹(첫 번 째 열 로 나 누 는 그룹)을 여러 개의 하위 그룹(뒤의 열 을 이용)으로 나 누 어 각 층 의 하위 그룹 을 통계 한다.
(7)여러 개의 compute by 자 구 를 사용 할 때 각각 다른 그룹 에 따라 결 과 를 집계 한다.자세 한 정 보 는 정상 적 인 첫 번 째 그룹 방식 으로 표 시 됩 니 다.
(8)compute by 자구 에서 여러 개의 통계 함 수 를 사용 할 수 있 는데 그들 은 서로 영향 을 주지 않 는 다.
(9)compute by 자구 에는 by 가 포함 되 지 않 고 compute 만 사용 할 수 있 습 니 다.  이 때 는 앞의 정 보 를 그룹 으로 나 누 지 않 고 모든 정 보 를 통계 합 니 다.
COMPUTE 와 GROUP BY COMPUTE 와 GROUP BY 의 차 이 를 비교 하면 다음 과 같다.GROUP BY 는 하나의 결과 집합 을 생 성 한다.각 그룹 은 그룹 이 열 에 따라 집합 함 수 를 표시 하 는 집합 함수 만 포함 하 는 줄 이 있 습 니 다.선택 목록 은 그룹 근거 열 과 집합 함수 만 포함 할 수 있 습 니 다.
COMPUTE 는 여러 결과 집합 을 생 성 합 니 다.하나의 결과 집합 은 선택 목록 의 표현 식 을 포함 하 는 각 그룹의 내 역 줄 을 포함 합 니 다.다른 결과 집합 은 그룹의 하위 집합 이나 SELECT 문장의 총 집합 을 포함한다.목록 을 선택 하면 그룹 이 열 이나 집합 함수 에 따라 다른 표현 식 을 포함 할 수 있 습 니 다.집합 함 수 는 선택 목록 이 아 닌 COMPUTE 자구 에서 지정 합 니 다.다음 조 회 는 GROUP BY 와 취 합 함 수 를 사용 합 니 다.이 조 회 는 각 그룹 에 한 줄 씩 있 는 결과 집합 을 되 돌려 줍 니 다.이 줄 에는 이 그룹의 집합 소계 가 포함 되 어 있 습 니 다.USE pubs SELECT type,SUM(price),SUM(advance)from titles GROUP BY type 은 COMPUTE 나 COMPUTE BY 자구 에 ntext,text 또는 image 데이터 형식 을 포함 할 수 없습니다.

좋은 웹페이지 즐겨찾기