ORACLE SQL UPDATE 명령어
테이블의 데이터를 변경하기 위한 명령어 입니다.
- 자신의 계정에서 만든 테이블 이거나 테이블에 대한 UPDATE 권한이 있어야 합니다.
- WHERE 조건을 생략하면 테이블의 모든 레코드가 변경되므로 조심해야 합니다.
- WHERE 조건은 컬럼명, 표현식, 상수, 서브쿼리, 비교연산자 등이 올 수 있습니다.
[기본 형식]
UPDATE [table_name | subquery] SET column = value[,column = value] [WHERE 조건] |
EMP 테이블에서 이름이 ‘SMITH’인 사원의 급여를 1000으로 변경 하세요. |
UPDATE emp SET sal = 1000 WHERE ename = 'SMITH' |
<실행결과>
1 행 이(가) 업데이트되었습니다.
SELECT ename, sal FROM emp WHERE ename = 'SMITH'; |
<실행결과>
ENAME | SAL | |
1 | SCOTT | 1000 |
수정한 값을 원래대로 되돌립니다. |
ROLLBACK |
SELECT ename, sal FROM emp WHERE ename = 'SMITH'; |
<실행결과>
ENAME | SAL | |
1 | SCOTT | 800 |
서브 쿼리를 이용한 UPDATE : EMP 테이블에서 이름이 ‘SMITH’인 사원의 급여를 이름이 ‘FORD’인 사원의 급여로 수정 하세요. 먼저 ‘SMITH’와 ‘FORD’의 급여를 확인 후 UPDATE 구문을 작성하세요. |
SELECT ename, sal FROM emp WHERE ename IN ('SMITH','FORD'); |
<실행결과>
ENAME | SAL | |
1 | SCOTT | 800 |
2 | FORD | 3000 |
UPDATE emp SET sal = (SELECT sal FROM emp WHERE ename = 'FORD' ) WHERE ename = 'SMITH'; |
<실행결과>
1 행 이(가) 업데이트되었습니다.
SELECT ename, sal FROM emp WHERE ename IN ('SMITH','FORD'); |
<실행결과>
ENAME | SAL | |
1 | SCOTT | 3000 |
2 | FORD | 3000 |
수정한 값을 원래대로 되돌립니다. |
ROLLBACK |
#SQL, #UPDATE, #오라클, #오라클SQL, #오라클교육, #SQL강좌