UPDATE

UPDATE (데이터 갱신)

테이블의 기존 행에서 선택한 컬럼 값을 갱신하는 문법이에요. 조건에 맞는 행들만 골라 값을 바꿀 수 있어요.

출처: 문서

본문

테이블의 기존 행에서 선택한 컬럼 값을 갱신해요.

column = expression 대입문에 이름이 있는 컬럼들은 WHERE 조건에 맞는 모든 행에 대해 갱신돼요. 일치하는 행에 대한 모든 컬럼 갱신 표현식의 값은 어떤 컬럼 값이 바뀌기 전에 모두 평가돼요. 표현식의 타입과 컬럼의 타입이 다르면, 숫자 필드 넓히기 같은 일반적인 암시적 CAST가 UPDATE 표현식 값에 적용돼요.

예시

배송일이 아직 배정되지 않은 모든 구매의 상태를 갱신해요:

UPDATE
  purchases
SET
  status = 'OVERDUE'
WHERE
  ship_date IS NULL;

모든 고객의 계정 담당자와 계정 배정 날짜를 갱신해요:

UPDATE
  customers
SET
  account_manager = 'John Henry',
  assign_date = now();

매니저를 매니저 ID와 일치하는 직원의 이름으로 갱신해요:

UPDATE
  new_hires
SET
  manager = (
    SELECT
      e.name
    FROM
      employees e
    WHERE
      e.employee_id = new_hires.manager_id
  );

audit 브랜치에서 배송일이 아직 배정되지 않은 모든 구매의 상태를 갱신해요:

UPDATE
  purchases @ audit
SET
  status = 'OVERDUE'
WHERE
  ship_date IS NULL;

제한 사항

일부 커넥터는 UPDATE를 제한적으로 지원하거나 전혀 지원하지 않아요. 자세한 내용은 커넥터 문서를 참고해요.