본문 바로가기

SQL심화-Training15

DAY.05 -- //////////////////////////////////-- 5.1.3 필요 이상으로 많은 정보를 가져오는 나쁜 SQL 문SELECT COUNT(S.emp_no) AS cntFROM ( SELECT E.emp_no, DM.dept_no FROM ( SELECT * FROM employees WHERE gender = 'M' AND emp_no > 300000 ) E LEFT JOIN dept_manager DM ON DM.emp_no = E.emp_no) S;-- I_성별 EXPLAIN SELECT COUNT(1) FROM employees WHERE emp_no > 300000 AND gender = 'M'; -- primary SELECT COUNT(1) FROM .. 2025. 11. 10.
DAY.04 -- 11/06 -- 성이 'Radwan'이고 성별이 남자인 사원을 조회 SELECT * FROM employees WHERE CONCAT(gender, last_name) = 'MRadwan'; EXPLAIN SELECT * FROM employees WHERE gender = 'M' AND last_name = 'Park'; SELECT COUNT(1) FROM employees; /* 부서 관리자의 사원번호, 이름, 성, 부서번호 데이터를 중복 제거하여 조회 */ EXPLAIN SELECT DISTINCT E.emp_no, E.first_name, E.last_name, DM.dept_no FROM employees E INNER JOIN dept_manager DM ON DM.emp_no =.. 2025. 11. 6.
2025-02-SQL심화 0. 팀 정보은행 업무 관리 시스템지민팀, 여주팀주문 배송 관리 시스템태호팀, 남주팀 1. 기본정보훈련기관그린컴퓨터아트학원 대구 캠퍼스과정명심화_기업요구 데이터베이스, SQL 성능 개선을 위한 프로젝트 실습과정 훈련기간2025.10.31 - 2025.12.12훈련시간10/31: 09:30 ~ 13:30 (일 4시간)11/03 ~ 11/27: 09:30 ~ 18:20 (일 8시간 / 점심시간 별도)11/28 ~ 12/11: 14:20 ~ 19:20 (일 5시간)12/12: 14:20 ~ 17:20 (일 3시간)점심시간: 13:20~14:20 (1시간)WIFI 비밀번호0535721005 2. 출석/퇴실비콘 / 지문 중 하나로 처리 가능.출석/퇴실은 한 가지로 통일하여야 한다.비콘으로 출석했다면 비콘으로 퇴.. 2025. 11. 6.
DAY.03 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.. 2025. 11. 5.
DAY.02 2006년 1월 1일 이후에 기록이 생성(create_date)된 고객 중에, 이름이 Steven이거나 Young인 사람이 아닌 고객 정보 조회더보기SELECT * FROM customer WHERE create_date >= '2006-01-02' AND NOT (first_name = 'Steven' OR first_name = 'Young');2005년에 렌탈한 고객의 이름, 성 조회 (중복제거) 더보기SELECT DISTINCT C.first_name, C.last_name FROM rental R INNER JOIN customer C ON C.customer_id = R.customer_id WHERE R.rental_date BETWEEN '2005-01-01 00:00:0.. 2025. 11. 5.
DAY.01 -- single line comment, 한 줄 주석/*multi line comment여러 줄 주석*/ -- person 테이블-- DDL, DML, DCL/*자연키(의미가 있는 키 - 업무키), 대리키(아무런 의미가 없는 데이터)복합키 후보- 이름, 생일- 이름, 주소문제PK가 없음예약어 사용 (NAME)CRUD 의미Create (생성 - insert)Read (읽기 - select)Update (수정 - update)Delete (삭제 - delete)*/CREATE TABLE person ( name VARCHAR(40) , eye_color CHAR(2) CHECK (eye_color IN ('BL', 'BR', 'GR')) , birth_date DATE , address VARCHAR.. 2025. 11. 3.