[SQL] 여러 열에 의해 그룹을 사용하여
SQL여러 열에 의해 그룹을 사용하여
나는 GROUP BY x의 점을 이해
하지만 어떻게 GROUP BY는 Y 작업을 X 않으며, 그것은 무엇을 의미 하는가?
해결법
-
==============================
1.X기로 수단은 한 그룹 X에 대해 동일한 값을 가진 모든 사람을 넣어.
X기로 수단은 한 그룹 X에 대해 동일한 값을 가진 모든 사람을 넣어.
저자는 그룹 X, Y 수단은 한 그룹의 두 X 및 Y에 대해 동일한 값을 가진 모든 사람을 넣어.
예를 사용하여 설명하기 위해 우리는 대학에서 어떤 주제에 참석하는 사람들과 관련, 다음과 같은 테이블이 있다고 가정 해 봅시다 :
Table: Subject_Selection Subject Semester Attendee --------------------------------- ITB001 1 John ITB001 1 Bob ITB001 1 Mickey ITB001 2 Jenny ITB001 2 James MKB114 1 John MKB114 1 Erica
당신은 단지 대상 열에 의해 그룹을 사용하는 경우; 말하다:
select Subject, Count(*) from Subject_Selection group by Subject
당신은 같은 것을 얻을 것이다 :
Subject Count ------------------------------ ITB001 5 MKB114 2
... MKB114 5 개 ITB001에 대한 항목 및 2가 있기 때문에
우리는 두 개의 열로 그룹 인 경우 :
select Subject, Semester, Count(*) from Subject_Selection group by Subject, Semester
우리는이를 얻을 것입니다 :
Subject Semester Count ------------------------------ ITB001 1 3 ITB001 2 2 MKB114 1 2
우리가 두 개의 열로 그룹은 그룹 그들 때문에 같은 주제와 학기 가진 사람 모두가 같은 그룹에, 그리고 모든 집계 기능 (카운트 계산하는 것으로, 합계, 평균 등 "말을 할 때, 때문이다 )이 그룹 "의 각. MKB114을하는 사람들이 학기 1에 2. 두, 그래서이 예에서, 이것은 우리가 그들을 계산하는 경우, 학기 1 ITB001을하는 세 사람이있다, 사실에 의해 입증되지 않으며, 두 학기에 그 일을 2 학기 (그룹 "MKB114 학기 2"로 데이터없이 끼워)에 대한 행
희망 의미가있다.
-
==============================
2.절 BY 그룹은 하나 이상의 열로 그룹 집계 기능과 함께 결과 집합을 사용한다. 예컨대 :
절 BY 그룹은 하나 이상의 열로 그룹 집계 기능과 함께 결과 집합을 사용한다. 예컨대 :
SELECT column_name, aggregate_function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name;
이 순서를 기억 :
당신이 집계 함수를 사용하고, 이것은 그들이 설정해야하는 순서 인 경우, 그렇지 않으면 오류를 얻을 수 있습니다,이 모두를 사용할 수 있습니다.
집계 함수는 다음과 같습니다
from https://stackoverflow.com/questions/2421388/using-group-by-on-multiple-columns by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 어떻게 java.sql.Date에 java.util.Date를 변환하는? (0) | 2020.03.09 |
---|---|
[SQL] MySQL은 : @variable 대 변수. 차이점이 뭐야? (0) | 2020.03.09 |
[SQL] 분할 쉼표는 오라클의 열 값을 분리 (0) | 2020.03.09 |
[SQL] 수 있습니까 쉼표로 구분 한 열에 여러 행? [복제] (0) | 2020.03.09 |
[SQL] 어떻게 MySQL을 사용 두 날짜 사이 쿼리합니까? (0) | 2020.03.09 |