찾다

MySQL GROUP BY 문

Dec 19, 2016 am 11:11 AM
mysql

GROUP BY 문은 하나 이상의 열을 기준으로 결과 집합을 그룹화합니다.

그룹화된 열에 COUNT, SUM, AVG 등의 함수를 사용할 수 있습니다.

GROUP BY 구문

SELECT 열_이름,함수(열_이름)FROM 테이블_이름
WHERE 열_이름 연산자 값
GROUP BY 열_이름;

시연 예시

이 장의 예제에서는 다음 테이블 구조와 데이터를 사용합니다. 사용하기 전에 다음 데이터를 데이터베이스로 가져올 수 있습니다.

MariaDB [RUNOOB]> SET NAMES utf8;쿼리 확인, 0행 영향(0.00초)

MariaDB [RUNOOB]> SET FOREIGN_KEY_CHECKS = 0;쿼리 확인, 0행 영향( 0.00초)

MariaDB [RUNOOB]> DROP TABLE IF EXISTS `employee_tbl`; 쿼리 확인, 0개 행이 영향을 받음, 1개의 경고(0.00초)MariaDB [RUNOOB]> CREATE TABLE `employee_tbl`(
-> `id` int(11) NOT NULL,
-> `name` char(10) NOT NULL DEFAULT '',
-> `date` datetime NOT NULL,
- > `singin`tinyint(4) NOT NULL DEFAULT '0' COMMENT '로그인 횟수',
-> PRIMARY KEY (`id`)
-> ENGINE=InnoDB DEFAULT CHARSET=utf8; 쿼리 OK, 0행 영향(0.04초)

MariaDB [RUNOOB]> BEGIN;쿼리 OK, 0행 영향(0.00초)

MariaDB [RUNOOB]> ( '1', 'aa', '2016-04-22 15:25:33', '1'), ('2', 'bb', '2016-04-20 15:25:47', ' 3'), ('3', 'cc', '2016-04-19 15:26:02', '2'), ('4', 'bb', '2016-04-07 15:26: 14', '4'), ('5', 'aa', '2016-04-11 15:26:40', '4'), ('6', 'aa', '2016-04-04 15 :26:54', '2');쿼리 확인, 6개 행 영향, 6개 경고(0.00초)
기록: 6개 중복: 0개 경고: 6

MariaDB [RUNOOB]> ; 쿼리 OK, 0행 영향(0.00초)

MariaDB [RUNOOB]> SET FOREIGN_KEY_CHECKS = 1;쿼리 OK, 0행 영향(0.00초)

가져오기 후 성공하면 다음 SQL 문을 실행합니다:

MariaDB [RUNOOB]> select * from Employees_tbl;+----+------+------------ ---- ------+---------+
| 아이디 | 날짜 |
+----+------+-- ---- ---------------+
| 1 |
| 2 | 2016-04-20 15:25:47 | 3 | 2016-04-19 1 | 2016-04-07 15:26:14 | 5 | 2016-04-11 15:26:40 | 2016-04-04 15:26 :54 | 2 |
+----+------+---------+------- -+
6 행 세트(0.00초)


다음으로 GROUP BY 문을 사용하여 데이터 테이블을 이름별로 그룹화하고 각 사람이 가지고 있는 레코드 수를 계산합니다.

MariaDB [ RUNOOB]> SELECT 이름, COUNT(*) FROM 직원_tbl GROUP BY 이름;+------+----------+

| COUNT(*) |

+------+---------+

| 3 |

| bb | 1 1 | +--- ---+------------+
3행 세트(0.00초)


WITH ROLLUP 사용

WITH ROLLUP 그룹화를 달성하기 위해 통계 데이터를 기반으로 동일한 통계(SUM, AVG, COUNT...)가 수행됩니다.

예를 들어 위의 데이터 테이블을 이름별로 그룹화한 다음 각 사람이 로그인한 횟수를 계산합니다.

MariaDB [RUNOOB]> SELECT name, SUM(singin) as singin_count FROM 직원_tbl 이름별 그룹 ROLLUP;+------+---------------+

| singin_count |

+------ +--- -----------+

| 7 |

| NULL | >+-- ----+---------------+

세트의 4개 행(0.00초)



기록 NULL은 숫자를 나타냅니다. 모두를 위한 로그인 수.

coalesce를 사용하여 NUll을 대체할 수 있는 이름을 설정할 수 있습니다.

select coalesce(a,b,c);


매개변수 설명:

a!=null이면 a를 선택하고,

a==null이면 b를 선택합니다.

b==null이면 c를 선택합니다. > a b c가 모두 null이면 null을 반환합니다(의미 없음).

다음 예에서는 이름이 비어 있으면 총 개수를 대신 사용합니다.

MariaDB [RUNOOB]> SELECT coalesce(name, '总数'), SUM(singin) as singin_count FROM  employee_tbl GROUP BY name WITH ROLLUP;+------------+ --------------+
| coalesce(이름, '总数')     | singin_count |
+------------+---------------+
| 아아                     |            7 |
| bb                     |            7 |
| 참조번호                     |            2 |
| 总数                    |           16 |
+------------+---------------+
4 세트의 행(0.00초)


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

MySQL은 초보자가 데이터베이스 기술을 배우는 데 적합합니다. 1. MySQL 서버 및 클라이언트 도구를 설치하십시오. 2. SELECT와 같은 기본 SQL 쿼리를 이해하십시오. 3. 마스터 데이터 작업 : 데이터를 만들고, 삽입, 업데이트 및 삭제합니다. 4. 고급 기술 배우기 : 하위 쿼리 및 창 함수. 5. 디버깅 및 최적화 : 구문 확인, 인덱스 사용, 선택*을 피하고 제한을 사용하십시오.

MySQL : 구조화 된 데이터 및 관계형 데이터베이스MySQL : 구조화 된 데이터 및 관계형 데이터베이스Apr 18, 2025 am 12:22 AM

MySQL은 테이블 구조 및 SQL 쿼리를 통해 구조화 된 데이터를 효율적으로 관리하고 외래 키를 통해 테이블 ​​간 관계를 구현합니다. 1. 테이블을 만들 때 데이터 형식을 정의하고 입력하십시오. 2. 외래 키를 사용하여 테이블 간의 관계를 설정하십시오. 3. 인덱싱 및 쿼리 최적화를 통해 성능을 향상시킵니다. 4. 데이터 보안 및 성능 최적화를 보장하기 위해 데이터베이스를 정기적으로 백업 및 모니터링합니다.

MySQL : 주요 기능 및 기능이 설명되었습니다MySQL : 주요 기능 및 기능이 설명되었습니다Apr 18, 2025 am 12:17 AM

MySQL은 웹 개발에 널리 사용되는 오픈 소스 관계형 데이터베이스 관리 시스템입니다. 주요 기능에는 다음이 포함됩니다. 1. 다른 시나리오에 적합한 InnoDB 및 MyISAM과 같은 여러 스토리지 엔진을 지원합니다. 2.로드 밸런싱 및 데이터 백업을 용이하게하기 위해 마스터 슬레이브 복제 기능을 제공합니다. 3. 쿼리 최적화 및 색인 사용을 통해 쿼리 효율성을 향상시킵니다.

SQL의 목적 : MySQL 데이터베이스와 상호 작용합니다SQL의 목적 : MySQL 데이터베이스와 상호 작용합니다Apr 18, 2025 am 12:12 AM

SQL은 MySQL 데이터베이스와 상호 작용하여 데이터 첨가, 삭제, 수정, 검사 및 데이터베이스 설계를 실현하는 데 사용됩니다. 1) SQL은 Select, Insert, Update, Delete 문을 통해 데이터 작업을 수행합니다. 2) 데이터베이스 설계 및 관리에 대한 생성, 변경, 삭제 문을 사용하십시오. 3) 복잡한 쿼리 및 데이터 분석은 SQL을 통해 구현되어 비즈니스 의사 결정 효율성을 향상시킵니다.

초보자를위한 MySQL : 데이터베이스 관리를 시작합니다초보자를위한 MySQL : 데이터베이스 관리를 시작합니다Apr 18, 2025 am 12:10 AM

MySQL의 기본 작업에는 데이터베이스, 테이블 작성 및 SQL을 사용하여 데이터에서 CRUD 작업을 수행하는 것이 포함됩니다. 1. 데이터베이스 생성 : createAbasemy_first_db; 2. 테이블 만들기 : CreateTableBooks (idintauto_incrementprimarykey, titlevarchar (100) notnull, authorvarchar (100) notnull, published_yearint); 3. 데이터 삽입 : InsertIntobooks (Title, Author, Published_year) VA

MySQL의 역할 : 웹 응용 프로그램의 데이터베이스MySQL의 역할 : 웹 응용 프로그램의 데이터베이스Apr 17, 2025 am 12:23 AM

웹 응용 프로그램에서 MySQL의 주요 역할은 데이터를 저장하고 관리하는 것입니다. 1. MySQL은 사용자 정보, 제품 카탈로그, 트랜잭션 레코드 및 기타 데이터를 효율적으로 처리합니다. 2. SQL 쿼리를 통해 개발자는 데이터베이스에서 정보를 추출하여 동적 컨텐츠를 생성 할 수 있습니다. 3.mysql은 클라이언트-서버 모델을 기반으로 작동하여 허용 가능한 쿼리 속도를 보장합니다.

MySQL : 첫 번째 데이터베이스 구축MySQL : 첫 번째 데이터베이스 구축Apr 17, 2025 am 12:22 AM

MySQL 데이터베이스를 구축하는 단계에는 다음이 포함됩니다. 1. 데이터베이스 및 테이블 작성, 2. 데이터 삽입 및 3. 쿼리를 수행하십시오. 먼저 CreateAbase 및 CreateTable 문을 사용하여 데이터베이스 및 테이블을 작성한 다음 InsertInto 문을 사용하여 데이터를 삽입 한 다음 최종적으로 SELECT 문을 사용하여 데이터를 쿼리하십시오.

MySQL : 데이터 저장에 대한 초보자 친화적 인 접근 방식MySQL : 데이터 저장에 대한 초보자 친화적 인 접근 방식Apr 17, 2025 am 12:21 AM

MySQL은 사용하기 쉽고 강력하기 때문에 초보자에게 적합합니다. 1.MySQL은 관계형 데이터베이스이며 CRUD 작업에 SQL을 사용합니다. 2. 설치가 간단하고 루트 사용자 비밀번호를 구성해야합니다. 3. 삽입, 업데이트, 삭제 및 선택하여 데이터 작업을 수행하십시오. 4. Orderby, Where and Join은 복잡한 쿼리에 사용될 수 있습니다. 5. 디버깅은 구문을 확인하고 쿼리를 분석하기 위해 설명을 사용해야합니다. 6. 최적화 제안에는 인덱스 사용, 올바른 데이터 유형 선택 및 우수한 프로그래밍 습관이 포함됩니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구