[MySQL] SELECT / INSERT / UPDATE / DELETE
안녕하세요?
모든 프로그램은 데이터를 가지고있고, 그 데이터는 데이터베이스를 사용한다고 해도 과언이 아닌데요.
이번엔 MySQL의 데이터베이스 명령어에 대해 알아보겠습니다.
가장 기초적인 SELECT (조회) / INSERT (입력) / UPDATE (수정) / DELETE (삭제) 에 대해 알아보겠습니다.
이해를 돕기 위하여 예시로 사용할 '직원' 테이블입니다.
번호 | 이름 | 부서 | 직급 |
1 | 홍길동 | 영업팀 | 과장 |
2 | 철수 | 홍보팀 | 대리 |
3 | 영희 | 영업팀 | 대리 |
1. SELECT (조회)
기본적인 개념은 테이블을 조회할 때 사용합니다.
예를 들어서 알아보겠습니다.
SELECT * FROM 직원;
번호 | 이름 | 부서 | 직급 |
1 | 홍길동 | 영업팀 | 과장 |
2 | 철수 | 홍보팀 | 대리 |
3 | 영희 | 영업팀 | 대리 |
모든 항목의 직원 테이블을 조회합니다.
SELECT 이름, 직급 FROM 직원;
이름 | 직급 |
홍길동 | 과장 |
철수 | 대리 |
영희 | 대리 |
위와는 다르게 이름과 직급 열만 해당되는 테이블을 조회합니다.
SELECT * FROM 직원 WHERE 직급='대리';
번호 | 이름 | 부서 | 직급 |
2 | 철수 | 홍보팀 | 대리 |
3 | 영희 | 영업팀 | 대리 |
직급이 대리에 해당하는 직원만 조회합니다.
2. INSERT (입력)
입력은 테이블에 새로운 행을 입력할 때 사용합니다.
INSERT INTO 직원 VALUES ('4', '땡칠이', '개발팀', '사원');
번호 | 이름 | 부서 | 직급 |
1 | 홍길동 | 영업팀 | 과장 |
2 | 철수 | 홍보팀 | 대리 |
3 | 영희 | 영업팀 | 대리 |
4 | 땡칠이 | 개발팀 | 사원 |
해당되는 값의 행을 추가합니다. 땡칠이 사원이 개발팀에 입사했네요.
다음과 같이 사용할 수도 있습니다.
INSERT INTO 직원(이름, 직급) VALUES ('짱구', '사원');
번호 | 이름 | 부서 | 직급 |
1 | 홍길동 | 영업팀 | 과장 |
2 | 철수 | 홍보팀 | 대리 |
3 | 영희 | 영업팀 | 대리 |
4 | 땡칠이 | 개발팀 | 사원 |
짱구 | 사원 |
짱구 사원이 입사는 했는데 부서가 정해지지 않았나보군요..
3. UPDATE (수정)
기존에 데이터를 말 그대로 수정할 때 사용합니다.
UPDATE 직원 SET 번호='5', 부서='개발팀' WHERE 이름='짱구';
번호 | 이름 | 부서 | 직급 |
1 | 홍길동 | 영업팀 | 과장 |
2 | 철수 | 홍보팀 | 대리 |
3 | 영희 | 영업팀 | 대리 |
4 | 땡칠이 | 개발팀 | 사원 |
5 | 짱구 | 개발팀 | 사원 |
짱구 사원에게 부서가 생겼습니다.
여기서 WHERE절을 입력하지 않으면 모든 인원이 번호5에 개발팀이 되어버리니 조심하세요.
4. DELETE (삭제)
드디어 마지막 삭제입니다. 역시 말 그대로 데이터를 삭제하니 조심히 사용하세요.
DELETE FROM 직원 WHERE 이름='철수';
번호 | 이름 | 부서 | 직급 |
1 | 홍길동 | 영업팀 | 과장 |
3 | 영희 | 영업팀 | 대리 |
4 | 땡칠이 | 개발팀 | 사원 |
5 | 짱구 | 개발팀 | 사원 |
철수 대리는 퇴사를 했나 봅니다..
DELETE FROM 직원;
번호 | 이름 | 부서 | 직급 |
모든 데이터를 삭제합니다.
회사가 망했네요.
그럼 이만.... 끝내야겠네요.