본문 바로가기
SQL심화-Training

샘플데이터 가공

by domsam 2025. 10. 30.
반응형

샘플 데이터 Github: GitHub - 7ieon/SQLtune  

 

GitHub - 7ieon/SQLtune

Contribute to 7ieon/SQLtune development by creating an account on GitHub.

github.com

[ <> Code ] > [ Download ZIP ] 으로 다운로드

 

강사 기준: "C:\Users\Administrator\Downloads\SQLtune-main" 경로에 압축을 해제하였음

> mysql -uroot -p --port {MySQL Port번호} < data_setting.sql

 

tunning 데이터베이스가 생성되고 테이블들도 함께 생성이 되는데 테이블명, 컬러명이 모두 한글로 되어 있다. 혹시 한글이 불편하다면 영어로 변경하도록 하자. 아래는 영어로 변경하는 DDL 스크립트이다.

USE tuning;

-- 급여 → salaries
ALTER TABLE `급여` RENAME TO `salaries`;
ALTER TABLE `salaries`
  CHANGE COLUMN `사원번호` `emp_no` INT NOT NULL,
  CHANGE COLUMN `연봉` `salary` INT NOT NULL,
  CHANGE COLUMN `시작일자` `from_date` DATE NOT NULL,
  CHANGE COLUMN `종료일자` `to_date` DATE NOT NULL,
  CHANGE COLUMN `사용여부` `use_yn` CHAR(1) DEFAULT '';

-- 부서 → departments
ALTER TABLE `부서` RENAME TO `departments`;
ALTER TABLE `departments`
  CHANGE COLUMN `부서번호` `dept_no` CHAR(4) NOT NULL,
  CHANGE COLUMN `부서명` `dept_name` VARCHAR(40) NOT NULL,
  CHANGE COLUMN `비고` `remark` VARCHAR(40) DEFAULT NULL;

-- 부서관리자 → dept_manager
ALTER TABLE `부서관리자` RENAME TO `dept_manager`;
ALTER TABLE `dept_manager`
  CHANGE COLUMN `사원번호` `emp_no` INT NOT NULL,
  CHANGE COLUMN `부서번호` `dept_no` CHAR(4) NOT NULL,
  CHANGE COLUMN `시작일자` `from_date` DATE NOT NULL,
  CHANGE COLUMN `종료일자` `to_date` DATE NOT NULL;

-- 부서사원_매핑 → dept_emp
ALTER TABLE `부서사원_매핑` RENAME TO `dept_emp`;
ALTER TABLE `dept_emp`
  CHANGE COLUMN `사원번호` `emp_no` INT NOT NULL,
  CHANGE COLUMN `부서번호` `dept_no` CHAR(4) NOT NULL,
  CHANGE COLUMN `시작일자` `from_date` DATE NOT NULL,
  CHANGE COLUMN `종료일자` `to_date` DATE NOT NULL;

-- 사원 → employees
ALTER TABLE `사원` RENAME TO `employees`;
ALTER TABLE `employees`
  CHANGE COLUMN `사원번호` `emp_no` INT NOT NULL,
  CHANGE COLUMN `생년월일` `birth_date` DATE NOT NULL,
  CHANGE COLUMN `이름` `first_name` VARCHAR(14) NOT NULL,
  CHANGE COLUMN `성` `last_name` VARCHAR(16) NOT NULL,
  CHANGE COLUMN `성별` `gender` ENUM('M','F') NOT NULL,
  CHANGE COLUMN `입사일자` `hire_date` DATE NOT NULL;

-- 사원출입기록 → emp_access_logs (원본에는 없지만 보존 목적)
ALTER TABLE `사원출입기록` RENAME TO `emp_access_logs`;
ALTER TABLE `emp_access_logs`
  CHANGE COLUMN `순번` `id` INT NOT NULL AUTO_INCREMENT,
  CHANGE COLUMN `사원번호` `emp_no` INT NOT NULL,
  CHANGE COLUMN `입출입시간` `access_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  CHANGE COLUMN `입출입구분` `access_type` CHAR(1) NOT NULL,
  CHANGE COLUMN `출입문` `door` CHAR(1) DEFAULT NULL,
  CHANGE COLUMN `지역` `area` CHAR(1) DEFAULT NULL;

-- 직급 → titles
ALTER TABLE `직급` RENAME TO `titles`;
ALTER TABLE `titles`
  CHANGE COLUMN `사원번호` `emp_no` INT NOT NULL,
  CHANGE COLUMN `직급명` `title` VARCHAR(50) NOT NULL,
  CHANGE COLUMN `시작일자` `from_date` DATE NOT NULL,
  CHANGE COLUMN `종료일자` `to_date` DATE DEFAULT NULL;

 

반응형