데이터 업데이트

완료됨

T-SQL의 UPDATE 문은 테이블의 기존 데이터를 변경하는 데 사용됩니다. UPDATE는 WHERE 절의 조건에 의해 정의되거나 조인에 정의된 행 집합에서 작동합니다. UPDATE 문에는 수정할 열을 지정하는 SET 절이 있습니다. SET 절은 쉼표로 구분된 하나 이상의 열을 가지며 열에 새 값을 제공합니다. UPDATE 문에 있는 WHERE 절의 구조는 SELECT 문에 있는 WHERE 절의 구조와 동일합니다.

참고

해당하는 WHERE 절 또는 조인이 없는 UPDATE는 테이블의 모든 행을 업데이트한다는 점에 유의해야 합니다. UPDATE 문은 주의해서 사용해야 합니다.

UPDATE 문의 기본 구문은 다음과 같습니다.

UPDATE <TableName>
SET 
<ColumnName> = { expression | DEFAULT | NULL }
{,…n}
WHERE <search_conditions>;

다음 예제에서는 승격에 대한 메모를 수정하는 데 사용되는 UPDATE 문을 보여 줍니다.

UPDATE Sales.Promotion
SET Notes = '25% off socks'
WHERE PromotionID = 2;

SET 절에서 여러 열을 수정할 수 있습니다. 예를 들어 다음 UPDATE 문은 승격 이름이 “Get Framed”인 모든 행의 DiscountNotes 필드를 모두 수정했습니다.

UPDATE Sales.Promotion
SET Discount = 0.2, Notes = REPLACE(Notes, '10%', '20%')
WHERE PromotionName = 'Get Framed';

UPDATE 문은 FROM 절도 지원하므로 쿼리 결과에 따라 데이터를 수정할 수 있습니다. 예를 들어 다음 코드는 Product.ProductModel 테이블에서 검색된 값을 사용하여 Sales.Promotion 테이블을 업데이트합니다.

UPDATE Sales.Promotion
SET Notes = FORMAT(Discount, 'P') + ' off ' + m.Name
FROM Product.ProductModel AS m
WHERE Notes IS NULL
    AND Sales.Promotion.ProductModelID = m.ProductModelID;