Actualización de datos

Completado

La instrucción UPDATE de T-SQL se usa para cambiar los datos existentes en una tabla. UPDATE funciona en un conjunto de filas, definidas por una condición en una cláusula WHERE o en una combinación. La instrucción UPDATE tiene una cláusula SET que especifica qué columnas se deben modificar. La cláusula SET en una o varias columnas, separadas por comas, que proporciona nuevos valores a esas columnas. La cláusula WHERE de una instrucción UPDATE tiene la misma estructura que una cláusula WHERE de una instrucción SELECT.

Nota:

Es importante tener en cuenta que una instrucción UPDATE sin una cláusula WHERE correspondiente o una combinación actualizará todas las filas de una tabla. Use la instrucción UPDATE con precaución.

A continuación, se muestra la sintaxis básica de una instrucción UPDATE.

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

En el ejemplo siguiente se muestra la instrucción UPDATE utilizada para modificar las notas de una promoción:

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

Puede modificar varias columnas en la cláusula SET. Por ejemplo, la siguiente instrucción UPDATE modificó los campos Discount y Notes de todas las filas en las que el nombre de la promoción es "Get Framed":

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

La instrucción UPDATE también admite una cláusula FROM, lo que permite modificar los datos en función de los resultados de una consulta. Por ejemplo, el código siguiente actualiza la tabla Sales.Promotion con los valores recuperados de la tabla Product.ProductModel.

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;