>  기사  >  데이터 베이스  >  mysql 그룹 다중 열

mysql 그룹 다중 열

(*-*)浩
(*-*)浩원래의
2019-05-17 18:53:332949검색

일상적인 개발 작업에서 우리는 데이터 테이블의 그룹 필드를 기반으로 통계 데이터를 얻기 위해 MYSQL의 GROUP BY 그룹화를 자주 사용합니다.

mysql 그룹 다중 열

예를 들어, 다음과 같은 구조를 가진 학생 과목 선택 테이블이 있습니다:

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

우리는 얼마나 많은 학생 과목을 세고 싶습니다. 등록하려면 다음 SQL

SELECT Subject, Count(*)
FROM Subject_Selection
GROUP BY Subject

을 적용하여 다음 결과를 얻습니다.

Subject    Count
------------------------------
ITB001     5
MKB114     2

테이블에는 5명의 학생이 ITB001을 선택하고 2명의 학생이 선택한 것으로 기록되어 있으므로 MKB114.

이 결과의 이유는 다음과 같습니다.
GROUP BY X는 동일한 X 필드 값을 가진 모든 레코드를 그룹에 넣는 것을 의미합니다.
GROUP BY X, Y는 어떻습니까?
GROUP BY X, Y는 X 필드 값과 Y 필드 값이 동일한 모든 레코드를 그룹에 넣는 것을 의미합니다.

그런 다음 각 학기에 각 과목을 선택하는 사람의 수를 계산하고 다음 SQL을 적용합니다.

SELECT Subject, Semester, Count(*)
FROM Subject_Selection
GROUP BY Subject, Semester

위 SQL의 의미는 Subject_Selection에 대한 것입니다. table 데이터를 그룹화하고 동일한 Subject 및 Semester 필드 값을 갖는 레코드를 동일한 그룹에 넣은 후 각 그룹의 데이터에 집계 함수(COUNT, SUM, AVG 등)를 적용합니다.

얻은 결과는 다음과 같습니다.

Subject    Semester   Count
------------------------------
ITB001     1          3
ITB001     2          2
MKB114     1          2

표의 기록을 보면 첫 학기에 3명, 2명이 ITB001을 선택한 것을 알 수 있습니다. 2학기에는 ITB001을,
을 선택했고, 1학기에는 2명의 학생이 MKB114를 선택했고, 2학기에는 MKB114를 선택한 학생이 아무도 없었습니다.

요약:

GROUP BY를 사용하여 MYSQL에서 테이블의 데이터를 그룹화하는 경우,
GROUP BY 레코드를 그룹에 넣는 경우,
GROUP BY X , Y는 X 필드 값과 Y 필드 값이 동일한 모든 레코드를 그룹

에 넣는 것을 의미합니다.

위 내용은 mysql 그룹 다중 열의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.