MySQL MySQL 집계함수

2018.07.06 08:40

졸리운_곰 조회 수:1584

 

MySQL 집계함수

 

집계함수는 결과 레코드들에 대한 레코드의 개수, 값들의 합, 평균, 최대값, 최소값 등의 산술적인 연산을 한 결과값을 출력한다.

다음은 MySQL에서의 집계함수 목록이다.

mysql image

지금부터 배울 집계함수를 배우기 위해서는 새로운 테이블을 만들어야 합니다.

그럼 아래의 테이블을 만들어보죠

mysql image

데이터베이스는 study_db , 테이블명은 student로 하겠습니다.

그럼 먼저 데이터베이스를 생성해 주세요.

 
  1. create database study_db

그럼 테이블을 만들겠습니다. study_db를 선택해 주세요.

 
  1. use study_db

다음은 student로 테이블 생성 명령문입니다.

 
  1. create table student(
  2. num int not null,
  3. name varchar(10),
  4. sex char(1),
  5. age int,
  6. major varchar(20),
  7. addr varchar(15),
  8. tel varchar(15),
  9. money int,
  10. primary key(num)
  11. );

테이블을 만들었으니 이제 데이터를 입력하겠습니다.

 
  1. INSERT INTO student VALUES(20120001, '고길동', 'm', 27, '선박', 'seoul', '010-000-4512', 5000);
 
  1. INSERT INTO student VALUES(20120002, '최둘리', 'm', 22, '역사', 'pusan', '010-999-9999', 4500);
 
  1. INSERT INTO student VALUES(20120003, '도우너', 'w', 15, '역사', 'daegu', '010-555-5555', 6500);
 
  1. INSERT INTO student VALUES(20120004, '희동이', 'm', 15, '유아', 'mokpo', '010-555-7777', 7000);
 
  1. INSERT INTO student VALUES(20120005, '소지섭', 'm', 22, '컴퓨터공학', 'seoul', '010-122-2222', 8000);
 
  1. INSERT INTO student VALUES(20120006, '이연희', 'w', 22, '컴퓨터공학', 'seoul', '010-999-9999', 8000);

위의 명령문을 입력했다면 확인해봅시다.

 
  1. select * from student;

mysql image

자자~~ 됐습니다. 그럼 이제 집계함수에 대해서 공부해보도록 하죠!!

전체 학생의 수를 검색 해 봅시다.

아래의 명령어를 입력

 
  1. select count(*) from student;

mysql image

그럼 이번엔 각 전공별로 재산을 합쳐서 보도록 합시다.

 
  1. select major, sum(money)
  2. from student
  3. group by major;

위의 명령문은 보일 필드는 전공과 재산입니다. student 테이블에서 보일것고 그룹은 major로 하였습니다.

sum함수를 사용했고 money에 대한 값들의 합계를 나타내 줍니다.

mysql image

위에 보듯이 각 전공별로 재산이 합해져서 나왔습니다.

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

이번에는 특정 문자열을 가진 레코드를 검색해봅시다.

특정 문자열을 가진 레코드를 검색하기 위해 사용되는 연산자는 like이며, 문자열 상수에 일치하기 위한 문자 '_'(언더스코어)와 %(퍼센트)가 제공된다.

_ 임의의 한문자 (한글의 경우 2바이트이므로 2개 사용)

% 퍼센트 (임의의 여러 문자(숫자0을 포함)

그럼 최씨성을 가진 사람의 모든 필드를 찾아봅시다.!!!

이거 레코드검색에서 했던거죠^^

 
  1. select *from student where name like '최%';

mysql image

like 대신에 not like를 사용해봅시다.

mysql image

최를 제외하고서 다 검색되죠^^

이렇게도 가능합니다. 이름끝에 희가 들어있지 않는 사람 찾기

 
  1. select *from student where name not like '____희';

mysql image

그럼이번에 서울에사는 사람중에 고씨성을 가진 사람을 찾아봅시다.

 
  1. select *from student where addr like 'seoul' and name like '고____'; or
 
  1. select *from student where addr like 'seoul' and name like '고%';

mysql image

그럼 이번엔 null값을 가진 검색어를 찾는 방법입니다.

null값은 알수 없는 값을 나타내기 위해 사용되는 특별한 값으로 입력되지 않은 값이 저장장치에 초기값으로 표현되어 조건 검색에 악영향을 끼치는 것을 방지하기 위해 null값을 가진 결과값을 검색한다.

mysql image

위와 같이 사용합니다.

num is null 은 null값을 찾아주고

num is not null 은 null이 아닌 것을 찾아줍니다.

 

[출처] http://www.everdevel.com/MySQL/total-function.php

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
공지 오라클 기본 샘플 데이터베이스 졸리운_곰 2014.01.02 87177
공지 [SQL컨셉] 서적 "SQL컨셉"의 샘플 데이타 베이스 SAMPLE DATABASE of ORACLE 가을의 곰을... 2013.02.10 79392
공지 [G_SQL] Sample Database 가을의 곰을... 2012.05.20 96113
15 [표준SQL] 퀴즈로 배우는 SQL : 전기 요금 계산 file 졸리운_곰 2024.08.10 1585
14 [표준SQL] 퀴즈로 배우는 SQL : 파이프 연결하기 file 졸리운_곰 2024.08.10 1324
13 [표준SQL] 퀴즈로 배우는 SQL : 공통점이 가장 많은 친구 찾기 file 졸리운_곰 2024.08.10 2130
12 [표준 SQL] 퀴즈로 배우는 SQL : 일별 누적 접속자 통계 구하기 file 졸리운_곰 2024.08.10 1695
11 [표준 SQL] 퀴즈로 배우는 SQL : 구분자로 나누어 행,열 바꾸기 file 졸리운_곰 2024.08.10 1887
10 [표준 SQL] 퀴즈로 배우는 SQL : 신입사원 부서 배치에 따른 급여 랭킹 시뮬레이션 file 졸리운_곰 2024.08.10 1343
9 [표준 SQL] 퀴즈로 배우는 SQL : 시작일, 종료일 사이의 휴일을 제외한 일수 구하기 file 졸리운_곰 2024.08.10 1489
8 [표준 SQL] 권순용의 DB 이야기 : 함수 기반 인덱스의 개념과 생성 이해 file 졸리운_곰 2024.08.10 1378
7 [표준 SQL] 퀴즈로 배우는 SQL : 계층 쿼리를 이용해 조직도 만들기 file 졸리운_곰 2024.08.10 2083
6 [표준 SQL] SQL을 잘한다는 기준은 무엇일까 file 졸리운_곰 2024.08.10 1344
5 [SQL] CRUD 기본 사용법 file 졸리운_곰 2023.01.23 1396
4 [기본 SQL] SELECT, INSERT, UPDATE, DELETE file 졸리운_곰 2022.04.26 1209
3 Mysql Join 해부(Left, Right, Outer, Inner Join) file 졸리운_곰 2019.01.30 1583
2 Join의 모든것.(LEFT OUTER, RIGHT OUTER, INNER, FULL OUTER, CROSS) 졸리운_곰 2019.01.30 1521
1 SELECT 문법 file 졸리운_곰 2017.11.22 2328
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED