Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

동일한 열 값을 가진 필드의 합계를 찾는 MySQL 쿼리?

<시간/>

이를 위해 GROUP BY 절을 사용하십시오. 먼저 테이블을 생성하겠습니다 -

mysql> 테이블 생성 sumOfFieldsDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> ClientSerialNumber varchar(100), -> ClientCost int -> );쿼리 OK, 영향을 받는 행 0개(0.50초)

다음은 삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하는 쿼리입니다 -

mysql> insert into sumOfFieldsDemo(ClientSerialNumber,ClientCost) values('1111',450);Query OK, 1개 행 영향(0.16초)mysql> insert into sumOfFieldsDemo(ClientSerialNumber,ClientCost) values('2222',550);쿼리 OK, 1행 영향(0.15초)mysql> sumOfFieldsDemo(ClientSerialNumber,ClientCost) values('3333',150)에 삽입;쿼리 OK, 1행 영향(0.64초)mysql> sumOfFieldsDemo(ClientSerialNumber,ClientCost)에 삽입 values('3333',250);쿼리 OK, 1행 영향(0.12초)mysql> sumOfFieldsDemo(ClientSerialNumber,ClientCost) values('2222',1000);Query OK, 1행 영향(0.10초)mysql> insert into sumOfFieldsDemo(ClientSerialNumber,ClientCost) values('1111',1000);Query OK, 1개 행 영향(0.16초)mysql> insert into sumOfFieldsDemo(ClientSerialNumber,ClientCost) values('1111',500);Query OK, 1 영향을 받는 행(0.17초) mysql> sumOfFieldsDemo(ClientSerialNumber,ClientCost) values('4444',100)에 삽입; 쿼리 확인, 1행 영향(0.17초)

다음은 select 문을 사용하여 테이블의 모든 레코드를 표시하는 쿼리입니다 -

mysql> sumOfFieldsDemo에서 * 선택;

이것은 다음과 같은 출력을 생성합니다 -

+----+--------------------+------------+| 아이디 | 클라이언트 일련 번호 | 클라이언트 비용 |+----+--------------------+------------+| 1 | 1111 | 450 || 2 | 2222 | 550 || 3 | 3333 | 150 || 4 | 3333 | 250 || 5 | 2222 | 1000 || 6 | 1111 | 1000 || 7 | 1111 | 500 || 8 | 4444 | 100 |+----+--------------------+------------+8행 세트(0.00초) 

다음은 동일한 열 값을 가진 필드의 합계를 찾는 쿼리입니다 -

mysql> Id,ClientSerialNumber,SUM(ClientCost) AS TotalSum 선택 -> sumOfFieldsDemo에서 -> ClientSerialNumber별로 그룹화,

이것은 다음과 같은 출력을 생성합니다 -

+----+--------------------+----------+| 아이디 | 클라이언트 일련 번호 | 총합 |+----+--------------------+----------+| 1 | 1111 | 1950년 || 2 | 2222 | 1550 || 3 | 3333 | 400 || 8 | 4444 | 100 |+----+--------------------+----------+4행 세트(0.00초)