이번에는 update set 문에 대해서 보겠습니다.
형식은 다음과 같습니다.
UPDATE table_name set 컬럼='변경할 값' where 컬럼='변경할 값의 해당 컬럼의 값';
제가 작성하고도 이해하기 어렵네요 ㅎㅎ
예문을 보겠습니다.
우선 TEST 라는 테이블에 컬럼과 값이 이렇게 들어가있네요.
4번 인덱스에 TITLE 컬럼의 값 보이시나요?
밤 이라는 값을 바꿔보도록 하겠습니다.
UPDATE TEST SET TITLE='오전' WHERE CONTENT='굿밤';
결과를 보도록 하겠습니다.
오전이라고 값이 바뀌었습니다.
이제 UPDATE SET 문의 응용을 보도록 하겠습니다.
UPDATE TEST SET COLUMN1='ABC' WHERE NO > 10;
설명 : TEST 테이블의 'COLUMN1' 컬럼값을 ABC로 수정하되 'NO' 컬럼의 값이 10이상인 모든것을 수정한다.
UPDATE TEST SET POINT=(POINT+100) WHERE NO <> 10;
설명 : TEST 테이블의 'POINT' 컬럼 값을 현재 값보다 100을 더한 값으로 수정하되 수정대상은 'NO' 컬럼값이 10을 제외한 모든것을 수정한다.
UPDATE TEST SET COLUMN1='ABC', COLUMN2='DEF' WHERE NO > 3 AND ID < 10;
설명 : TEST 테이블의 'COLUMN1' 컬럼과 'COLUMN2' 컬럼의 값을 수정하되 'NO' 컬럼값이 3보다 커야하고 'ID' 컬럼의 값이 10보다 작은 모든 값을 수정한다.
UPDATE TEST SET COLUMN1='ABC' WHERE NO > 3 ORDER BY UID LIMIT 20;
설명 : TEST 테이블의 'COLUMN1' 컬럼의 값을 ABC로 수정하되 'NO' 컬럼값이 3보다 커야하고 전체 목록을 UID 컬럼값을 기준으로 정렬해서 상위 20개를 수정한다.
UPDATE TEST SET COLUMN1=REPLACE(COLUMN1, '컴퓨터', 'COMPUTER');
설명 : TEST 테이블의 'COLUMN1' 컬럼의 값에 '컴퓨터' 라는 단어가 포함되어 있다면 모두 'COMPUTER'로 수정한다.
UPDATE TEST SET COLUMN1=CONCAT(COLUMN1, 'COPY') WHERE NO > 10;
설명 : TEST 테이블의 'COLUMN1' 컬럼의 값에 'COPY'를 덧붙이되 'NO' 컬럼의 값이 10 이상인 값에 덧붙인다.
이해가 잘 되셨는가요?
궁금하신점은 댓글 남겨주세요~
'IT 프로그래밍 > ORACLE' 카테고리의 다른 글
오라클 group by 절 기본 설명 (0) | 2014.01.26 |
---|---|
오라클 그룹함수에 대한 기본 이해 (0) | 2014.01.26 |
ORACLE INSERT INTO 기초 설명 (0) | 2014.01.25 |
ORACLE ALTER TABLE COLUMN 삭제하는 DROP (0) | 2014.01.25 |
ORACLE ALTER TABLE COLUMN 속성 변경하는 MODIFY (0) | 2014.01.25 |