데이터베이스 및 테이블 설정
윈도우 함수를 사용하기 전에 데이터베이스와 샘플 데이터가 포함된 테이블이 필요합니다. 이 단계에서는 company라는 데이터베이스와 employees라는 테이블을 생성합니다.
먼저 데스크톱에서 터미널을 엽니다.
root 사용자로 MySQL 서버에 연결합니다. 이 환경은 랩 환경이므로 비밀번호 없이 sudo를 사용하여 연결할 수 있습니다.
sudo mysql -u root
연결되면 MySQL 프롬프트 (mysql>) 가 표시됩니다.
이제 company 데이터베이스를 생성하고 해당 데이터베이스로 전환합니다. IF NOT EXISTS 절은 데이터베이스가 이미 존재하는 경우 오류를 방지합니다.
CREATE DATABASE IF NOT EXISTS company;
USE company;
다음으로 employees 테이블을 생성합니다. 이 테이블은 직원 ID, 이름, 부서 및 급여를 저장합니다.
CREATE TABLE IF NOT EXISTS employees (
employee_id INT PRIMARY KEY,
employee_name VARCHAR(50),
department VARCHAR(50),
salary DECIMAL(10, 2)
);
이제 employees 테이블에 샘플 데이터를 삽입합니다.
INSERT INTO employees (employee_id, employee_name, department, salary) VALUES
(1, 'Alice', 'Sales', 60000.00),
(2, 'Bob', 'Marketing', 55000.00),
(3, 'Charlie', 'Sales', 65000.00),
(4, 'David', 'IT', 70000.00),
(5, 'Eve', 'Marketing', 62000.00)
ON DUPLICATE KEY UPDATE
employee_name = VALUES(employee_name),
department = VALUES(department),
salary = VALUES(salary);
데이터가 올바르게 삽입되었는지 확인하려면 employees 테이블의 모든 행을 볼 수 있습니다.
SELECT * FROM employees;
출력에는 삽입한 다섯 개의 레코드가 표시되어야 합니다.
+-------------+---------------+------------+----------+
| employee_id | employee_name | department | salary |
+-------------+---------------+------------+----------+
| 1 | Alice | Sales | 60000.00 |
| 2 | Bob | Marketing | 55000.00 |
| 3 | Charlie | Sales | 65000.00 |
| 4 | David | IT | 70000.00 |
| 5 | Eve | Marketing | 62000.00 |
+-------------+---------------+------------+----------+
5 rows in set (0.00 sec)
데이터베이스와 테이블이 준비되었으므로 다음 단계로 이동하여 윈도우 함수에 대해 알아보겠습니다.