MariaDB / 함수 / COUNT, SUM, AVG, MAX, MIN

예제로 사용한 데이터베이스는 employees입니다.

COUNT

COUNT는 특정 조건을 만족하는 행의 개수를 세는 함수입니다.

employees 테이블의 전체 행 개수를 구합니다. 의미 상 전체 직원 수를 구하는 것입니다.

MariaDB [employees]> SELECT COUNT(*)
    -> FROM employees
    -> ;
+----------+
| COUNT(*) |
+----------+
|   300024 |
+----------+

WHERE를 이용하여 조건을 추가할 수 있습니다. 다음은 남자 직원의 수를 구하는 쿼리입니다.

MariaDB [employees]> SELECT COUNT(*)
    -> FROM employees
    -> WHERE gender = "M"
    -> ;
+----------+
| COUNT(*) |
+----------+
|   179973 |
+----------+

GROUP BY를 이용하면 값 별로 개수를 구할 수 있습니다. 다음은 WHERE를 사용하지 않고 남자 직원과 여자 직원의 수를 구하는 쿼리입니다.

MariaDB [employees]> SELECT gender, COUNT(gender) "count"
    -> FROM employees
    -> GROUP BY gender
    -> ;
+--------+--------+
| gender | count  |
+--------+--------+
| M      | 179973 |
| F      | 120051 |
+--------+--------+

SUM

SUM은 특정 조건을 만족하는 행의 개수를 세는 함수입니다.

salaries 테이블에서 emp_no가 10001인 사원 급여의 총합을 구합니다.

MariaDB [employees]> SELECT SUM(salary)
    -> FROM salaries
    -> WHERE emp_no = 10001
    -> ;
+-------------+
| SUM(salary) |
+-------------+
|     1281612 |
+-------------+

AS를 이용하면 열 이름을 다른 것으로 보이게 할 수 있습니다.

MariaDB [employees]> SELECT SUM(salary) AS 합계
    -> FROM salaries
    -> WHERE emp_no = 10001
    -> ;
+---------+
| 합계    |
+---------+
| 1281612 |
+---------+

AVG

AVG는 특정 조건을 만족하는 행의 값들의 평균을 구하는 함수입니다.

전체 급여의 평균을 구합니다.

MariaDB [employees]> SELECT AVG(salary)
    -> FROM salaries
    -> ;
+-------------+
| AVG(salary) |
+-------------+
|  63810.7448 |
+-------------+

열 이름을 Average로 출력합니다.

MariaDB [employees]> SELECT AVG(salary) AS Average
    -> FROM salaries
    -> ;
+------------+
| Average    |
+------------+
| 63810.7448 |
+------------+

emp_no가 10001인 사원의 평균 급여를 구합니다.

MariaDB [employees]> SELECT AVG(salary) AS Average
    -> FROM salaries
    -> WHERE emp_no = 10001
    -> ;
+------------+
| Average    |
+------------+
| 75388.9412 |
+------------+

ROUND 함수로 소수점 아래의 숫자를 없앱니다.

MariaDB [employees]> SELECT ROUND(AVG(salary),0) AS Average
    -> FROM salaries
    -> WHERE emp_no = 10001
    -> ;
+---------+
| Average |
+---------+
|   75389 |
+---------+

MAX, MIN

MAX는 최댓값, MIN은 최솟값을 구하는 함수입니다.

급여의 최댓값과 최솟값을 구합니다.

MariaDB [employees]> SELECT MAX(salary), MIN(salary)
    -> FROM salaries
    -> ;
+-------------+-------------+
| MAX(salary) | MIN(salary) |
+-------------+-------------+
|      158220 |       38623 |
+-------------+-------------+

AS를 이용하여 열 이름을 바꿀 수 있습니다.

MariaDB [employees]> SELECT MAX(salary) AS MAX, MIN(salary) AS MIN
    -> FROM salaries
    -> ;
+--------+-------+
| MAX    | MIN   |
+--------+-------+
| 158220 | 38623 |
+--------+-------+

emp_no가 10001, 10002, 10003인 사원의 최대 급여과 최소 급여를 구합니다.

MariaDB [employees]> SELECT MAX(salary) AS MAX, MIN(salary) AS MIN
    -> FROM salaries
    -> WHERE emp_no IN ( 10001, 10002, 10003 )
    -> ;
+-------+-------+
| MAX   | MIN   |
+-------+-------+
| 88958 | 40006 |
+-------+-------+

Related Posts

MariaDB / 함수 / INSERT / 일정 구간 문자열 교체하는 함수

MariaDB / 함수 / INSERT / 일정 구간 문자열 교체하는 함수

INSERT는 일정 구간의 문자열을 다른 문자열로 교체하는 함수입니다. INSERT( string, position, length, new-string ) string : 원본 문자열입니다. position : 구간이 시작하는 위치입니다. length : 구간의 길이입니다. new-string : 교체될 문자열입니다. 예를 들어 다음과 같은 경우, 1234567에서 4번째 문자부터 2개를 지우고 ABC를 넣습니다. 즉, 45를 지우고 ABC를 넣습니다. MariaDB > SELECT INSERT( '1234567', 4, 2, 'ABC' ...

MariaDB / DBeaver / 테이블 만들기, 삭제하기

MariaDB / DBeaver / 테이블 만들기, 삭제하기

테이블 만들기 데이터베이스를 선택하고 마우스 우클릭합니다. 을 클릭하면... 다음과 같은 화면이 나옵니다. 테이블 이름을 정하고... 마우스 우클릭 후 을 클릭하거나, 아래에 있는 아이콘을 클릭하여... 열을 만듭니다. 를 클릭하고... 를 클릭하면... 테이블이 만들어집니다. 테이블 삭제하기 테이블을 선택하고 마우스 우클릭 후 를 클릭합니다. 를 클릭하면 테이블이 삭제됩니다.

MariaDB / 함수 / COUNT, SUM, AVG, MAX, MIN

MariaDB / 함수 / COUNT, SUM, AVG, MAX, MIN

예제로 사용한 데이터베이스는 employees입니다. COUNT COUNT는 특정 조건을 만족하는 행의 개수를 세는 함수입니다. employees 테이블의 전체 행 개수를 구합니다. 의미 상 전체 직원 수를 구하는 것입니다. MariaDB > SELECT COUNT(*) -> FROM employees -> ; +----------+ | COUNT(*) | +----------+ | 300024 | +----------+ WHERE를 이용하여 조건을 추가할 수 있습니다. 다음은 남자 직원의 ...

MariaDB / 연산자 / AND, OR, IN

MariaDB / 연산자 / AND, OR, IN

예제로 사용한 데이터베이스는 employees입니다. AND 여러 조건을 동시에 만족시키는 데이터를 추출할 때 AND 연산자를 사용합니다. employees 테이블에서 first_name이 George이고, gender가 M인 데이터를 가져옵니다. MariaDB > SELECT first_name, gender -> FROM employees -> WHERE -> first_name = "George" -> AND ...

MariaDB / TABLE / AUTO_INCREMENT / 자동으로 증가하는 값 만들기

MariaDB / TABLE / AUTO_INCREMENT / 자동으로 증가하는 값 만들기

테이블에는 데이터를 특정할 수 있는 고유값이 있는 게 좋습니다. 고유값을 수동으로 넣을 수는 없으므로, 값을 자동으로 증가시키는 AUTO_INCREMENT를 사용합니다. AUTO_INCREMENT로 고유값이 어떻게 만들어지는지 알아보겠습니다. 사용하는 테이블 이름은 test입니다. 자동으로 증가하는 열 만들기 열 이름은 id, 데이터 타입은 정수(INT)로 만듭니다. 데이터 타입 뒤에 AUTO_INCREMENT PRIMARY KEY를 붙입니다. MariaDB > CREATE TABLE test ( id INT AUTO_INCREMENT ...

MariaDB / DBeaver / MariaDB에 연결하는 방법

MariaDB / DBeaver / MariaDB에 연결하는 방법

MariaDB를 명령어로만 관리하는 것은 힘듭니다. 적절한 툴을 이용하면 작업 속도를 높일 수 있습니다. MariaDB를 관리하는 툴을 여러 가지가 있는데, 그 중 하나가 DBeaver입니다. Free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases. Supports all popular databases: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL ...

MariaDB / TABLE / 열 추가하기, 열 삭제하기, 열 순서 변경하기, 열 데이터 타입 변경하기

MariaDB / TABLE / 열 추가하기, 열 삭제하기, 열 순서 변경하기, 열 데이터 타입 변경하기

데이터베이스 만들기 열(Column) 추가, 삭제 등을 해볼 테스트용 데이터베이스 jbTest를 만듭니다. CREATE DATABASE jbTest; 데이터베이스로 들어갑니다. USE jbTest; jbColumn1, jbColumn2, jbColumn3 세 개의 열을 가진 테이블 jbTable1을 만듭니다. CREATE TABLE jbTable1 ( jbColumn1 INT, jbColumn2 INT, jbColumn3 INT ) ; 다음은 현재 테이블 구조입니다. MariaDB > DESC jbTable1; +-----------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | ...

MariaDB / 함수 / SUBSTRING, SUBSTRING_INDEX / 문자열 추출하는 함수

MariaDB / 함수 / SUBSTRING, SUBSTRING_INDEX / 문자열 추출하는 함수

SUBSTRING 12345678의 5번째부터 끝까지 문자열을 추출합니다. SELECT SUBSTRING( '12345678', 5 ); +----------------------------+ | SUBSTRING( '12345678', 5 ) | +----------------------------+ | 5678 | +----------------------------+ SELECT SUBSTRING( '12345678' FROM 5 ); +--------------------------------+ | SUBSTRING( '12345678' FROM 5 ) | +--------------------------------+ | 5678 ...

MariaDB / 함수 / FORMAT / 숫자 세 자리마다 쉼표(콤마) 찍는 함수

MariaDB / 함수 / FORMAT / 숫자 세 자리마다 쉼표(콤마) 찍는 함수

FORMAT FORMAT은 숫자 세 자리마다 쉼표(콤마) 찍는 함수입니다. 예제 123456789에서 세 자리마다 쉼표를 넣습니다. MariaDB > SELECT FORMAT(123456789, 0) as Money; +-------------+ | Money | +-------------+ | 123,456,789 | +-------------+ 값이 숫자 형식이 아니어도 가능합니다. MariaDB > SELECT FORMAT('123456789', 0) as Money; +-------------+ | Money | +-------------+ | 123,456,789 | +-------------+ 0이 뜻하는 것은 소숫점 ...

MariaDB / Query / UNION, UNION ALL

MariaDB / Query / UNION, UNION ALL

UNION 또는 UNION ALL을 이용하면 여러 테이블의 데이터를 합하여 출력할 수 있습니다. 예를 들어 다음과 같은 테이블과... SELECT * FROM test_1; +-------+-------+-------+ | col_1 | col_2 | col_3 | +-------+-------+-------+ | 1 | A | 1 | | 2 | ...