이전 글에서 테이블 crud 쿼리 사용하는 법을 배웠으니 컬럼별 데이터를 조작하는 방법에 대해서도 알아보겠습니다.
테이블 crud 개념을 보고 싶으시다면 이 부분을 클릭하시면 됩니다.
데이터 조회, 수정, 삽입, 삭제 방법의 형식 및 예시를 적어보았습니다.
데이터 조회 SELECT
- 형식
select 컬럼명1, 컬럼명2, ... from 조회할테이블명
- 전체 데이터를 조회하고 싶은 경우
select * from 테이블명
- 예시
-- tb_emp 테이블의 전체 데이터 조회
SELECT * FROM tb_emp;
-- tb_emp 테이블에 있는 emp_no, emp_nm 데이터 조회
SELECT emp_no, emp_nm FROM tb_emp;
- 결과
- SELECT 문 작성 규칙
더보기
- 대문자와 소문자를 구분하지 않는다.
- 가독성을 향상을 위해 예약어(명령어)는 대문자로 작성하는 것이 좋다.
- 가독성 향상을 위해 한줄 내려쓰기, 들여쓰기를 활용하는 것이 좋다.
- DISTINCT 중복제거
SELECT DISTINCT 컬럼명 FROM 테이블명;
중복을 제거하고 싶은 컬럼명 앞에 쓰인다.
- AS 별칭 ALIAS
SELECT 컬럼명1 AS A, 컬럼명2 AS B, 컬럼명3 AS C... FROM 테이블명;
조회 결과 테이블의 열 이름을 별칭 AS 로 지정해줄 수있다.
혹은 조인으로 인해 여러개의 테이블이 사용되거나
겹치는 컬럼명이 있는 경우 혼동을 막기 위해 테이블명에 AS 테이블별칭을 지정하기도 한다.
- ORDER BY ASC, DESC
-- 작은 값부터 순서대로 정렬
SELECT * FROM TB_EMP ORDER BY EMP_NO ASC;
-- 큰 값부터 순서대로 정렬
SELECT * FROM TB_EMP ORDER BY EMP_NO DESC;
데이터 수정 UPDATE
- 형식
UPDATE 수정하려는 컬럼이 있는 테이블명 SET 컬럼명 = '바꿀값' WHERE 기준컬럼 = '기준값';
- 예제
UPDATE TB_EMP SET BIRTH_DE = '19971215' WHERE EMP_NM = '최창수';
- 결과
- 잘못 수정한 경우
COMMIT이 되기 전 ROLLBACK을 한다.
이미 COMMIT되었다면 ROLLBACK으로 데이터 복구가 불가하며
오라클 데이터베이스를 일정 시간 이전으로 되돌리는 방법을 사용해야 한다.
※ 데이터 수정 시 주의사항
- WHERE 조건절로 데이터를 특정해주지 않으면 테이블의 전체 데이터가 수정된다.
데이터 삽입 INSERT
- 형식
INSERT INTO 테이블명 (컬럼명1, 컬럼명2, 컬럼명3) VALUES (데이터1, 데이터2, 데이터3);
- 모든 컬럼의 데이터를 삽입하는 경우
INSERT INTO 테이블명 VALUES (데이터1, 데이터2, 데이터3);
※ 데이터 삽입 시 주의사항
- 컬럼명과 컬럼에 해당하는 데이터 값을 동일한 순서로 작성해야 한다.
- 모든 컬럼의 값을 삽입하는 경우 컬럼명은 적지 않아도 되나 컬럼 순서대로 데이터를 작성해야 한다.
데이터 삭제 DELETE
- 형식
DELETE FROM 테이블명 WHERE 조건;
- 예시
DELETE FROM COMPANY_TABLE WHERE COMPANY_CODE = 1;
※ 데이터 삭제 시 주의사항
WHERE 조건절로 데이터를 특정해주지 않으면 테이블의 전체 데이터가 삭제된다.
- 제약조건 상관없이 데이터 삭제하고 싶을 때
ALTER TABLE 테이블명 DROP CONSTRAINT 제약조건명 CASCADE;
-- 삭제하고 싶은 김려원이라는 직원의 전체 데이터를 조회한다.
SELECT * FROM TB_EMP WHERE EMP_NM LIKE '김려원';
-- EMPNO에 제약조건이 걸려있어 삭제가 되지 않는 상황이라면
-- 제약조건명 PK_PB_EMP를 먼저 삭제한다.
ALTER TABLE TB_EMP DROP CONSTRAINT PK_TB_EMP CASCADE;
-- 김려원의 모든 데이터를 삭제
DELETE FROM TB_EMP tc WHERE EMP_NM LIKE '김려원';
반응형