상세 컨텐츠

본문 제목

데이터를 수정하는 UPDATE 문

Database

by somiyuralove 2022. 3. 29. 23:32

본문

* UPDATE 문장의 구성

테이블에 데이터를 수정하는 방법으로 SQL 문장에서는 UPDATE 문장을 이용한다.

UPDATE 절 UPDATE [SCHEMA][TABLE | VIEW][@DBLINK][ALIAS]
SET 절 SET { (COLUMN [, COLUMN]...} = (SUBQUERY)
          | COLUMN = { EXPR | (SUBQUERY) } }
[,          { (COLUMN [, COLUMN]...) = (SUBQUERY)
          | COLUMN = { EXPR | (SUBQUERY) } } ] ...
WHERE 절  [WHERE CONDITION]

(1) UPDATE 절

데이터를 수정해야 할 테이블이나 뷰를 지정한다. @DBLINK는 원격지에 있는 테이블이나 뷰를 사용할 때 데이터베이스 링크 이름을 기술한다.

(2) SET 절

수정해야 할 컬럼을 기술하고 수정해야 할 값을 지정한다. WHERE의 조건에 따라 단건이나 다건 모두 수정 가능하다.

(3) WHERE 절

대상이 되는 테이블에서 가져올 데이터에 대해 조건을 부여하여 데이터를 조회하는 경우에 기술한다. WHERE 절에는 서브쿼리를 작성하여 조건을 다양하게 만들 수 있다.

* UPDATE 문장 유형에 따른 예제

INSERT 문장 예에서 사용하였던 제품(ITEM) 테이블을 이용하여 데이터를 수정하기 위한 UPDATE 문장을 사용해보자.

(1) 조건에 따른 UPDATE

일정한 조건에 따라 테이블의 데이터를 수정한다.

[예제] 제품코드가 1001인 제품의 수량을 500개로 변경하라

UPDATE ITEM SET QTY = 500 WHERE ITEMCD = '1001'

- WHERE 조건절에 PK가 조건으로 들어오거나 조건이 걸린 값 중ㄷ에 유일한 값일 경우는 한 개의 로우만 데이터를 수정한다.

- WHERE 조건문을 생략하여 데이블의 모든 데이터를 한꺼번에 수정하지 않도록 주의한다.

(2) 테이블 전체 UPDATE

테이블 전체의 로우를 수정한다.

[예제] 모든 제품의 가격을 30%씩 할인하려고 한다. 제품 테이블에 있는 데이터를 수정한다.

UPDATE ITEM SET PRICE = PRICE - (PRICE * (30/100));

- WHERE 조건절을 생략함으로써 테이블의 모든 데이터를 수정한다.

관련글 더보기

댓글 영역