Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL에서 특정 단어가 열에 나타나는 횟수 확인하는 방법

MySQL에서 특정 단어(값)가 열에 몇 번 나타나는지 확인하고 싶다면 COUNT() 함수를 활용하면 됩니다. 이 글에서는 예제 테이블을 만들고, 특정 직원 이름이 몇 번 등장하는지 단계별로 확인해 보겠습니다.

1. 테이블 생성하기

먼저 예제로 사용할 테이블을 생성합니다.

mysql> create table DemoTable
    -> (
    -> EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> EmployeeName varchar(100)
    -> );
Query OK, 0 rows affected (0.62 sec)

2. 데이터 삽입하기

INSERT 명령을 사용해 테이블에 레코드를 추가합니다.

mysql> insert into DemoTable(EmployeeName) values('John');
Query OK, 1 row affected (0.21 sec)

mysql> insert into DemoTable(EmployeeName) values('Carol');
Query OK, 1 row affected (0.17 sec)

mysql> insert into DemoTable(EmployeeName) values('David');
Query OK, 1 row affected (0.14 sec)

mysql> insert into DemoTable(EmployeeName) values('Carol');
Query OK, 1 row affected (0.14 sec)

mysql> insert into DemoTable(EmployeeName) values('Carol');
Query OK, 1 row affected (0.29 sec)

mysql> insert into DemoTable(EmployeeName) values('Bob');
Query OK, 1 row affected (0.22 sec)

mysql> insert into DemoTable(EmployeeName) values('Sam');
Query OK, 1 row affected (0.12 sec)

3. 전체 데이터 조회하기

SELECT 문을 사용해 테이블에 저장된 모든 레코드를 확인합니다.

mysql> select *from DemoTable;

출력 결과

+------------+--------------+
| EmployeeId | EmployeeName |
+------------+--------------+
|          1 | John         |
|          2 | Carol        |
|          3 | David        |
|          4 | Carol        |
|          5 | Carol        |
|          6 | Bob          |
|          7 | Sam          |
+------------+--------------+
7 rows in set (0.00 sec)

4. 특정 단어의 등장 횟수 구하기

아래 쿼리는 MySQL에서 특정 단어가 열에 나타나는 횟수를 구하는 방법입니다. 여기서는 직원 이름 중 'Carol'이 몇 번 등장하는지 확인해 보겠습니다.

mysql> select EmployeeName,count(EmployeeId) as Occurrence from DemoTable where
EmployeeName='Carol';

출력 결과

+--------------+------------+
| EmployeeName | Occurrence |
+--------------+------------+
| Carol        | 3          |
+--------------+------------+
1 row in set (0.05 sec)

실행 결과를 보면 'Carol'이라는 이름이 총 3번 나타난 것을 확인할 수 있습니다.

참고: GROUP BY로 모든 값의 개수 한 번에 구하기

특정 값 하나가 아니라 열에 있는 모든 값의 등장 횟수를 한 번에 알고 싶다면 GROUP BY 절을 함께 사용하면 편리합니다.

mysql> select EmployeeName, count(EmployeeId) as Occurrence 
    -> from DemoTable 
    -> group by EmployeeName;

이 쿼리를 실행하면 각 이름별로 등장 횟수가 한꺼번에 출력되므로, 데이터 분석 시 WHERE 조건을 반복해서 실행할 필요 없이 효율적으로 집계할 수 있습니다.