Обновление данных. Команда UPDATE

Последнее обновление: 13.07.2017

Для изменения уже имеющихся строк в таблице применяется команда UPDATE. Она имеет следующий формальный синтаксис:

UPDATE имя_таблицы
SET столбец1 = значение1, столбец2 = значение2, ... столбецN = значениеN
[FROM выборка AS псевдоним_выборки]
[WHERE условие_обновления]

Например, увеличим у всех товаров цену на 5000:

UPDATE Products
SET Price = Price + 5000
UPDATE в T-SQL

Используем критерий, и изменим название производителя с "Samsung" на "Samsung Inc.":

UPDATE Products
SET Manufacturer = 'Samsung Inc.'
WHERE Manufacturer = 'Samsung'

Более сложный запрос - заменим у поля Manufacturer значение "Apple" на "Apple Inc." в первых 2 строках:

UPDATE Products
SET Manufacturer = 'Apple Inc.'
FROM 
(SELECT TOP 2 FROM Products WHERE Manufacturer='Apple') AS Selected
WHERE Products.Id = Selected.Id

С помощью подзапроса после ключевого слова FROM производится выборка первых двух строк, в которых Manufacturer='Apple'. Для этой выборки будет определен псевдоним Selected. Псевдоним указывается после оператора AS.

Далее идет условие обновления Products.Id = Selected.Id. То есть фактически мы имеем дело с двумя таблицами - Products и Selected (которая является производной от Products). В Selected находится две первых строки, в которых Manufacturer='Apple'. В Products - вообще все строки. И обновление производится только для тех строк, которые есть в выборке Selected. То есть если в таблице Products десятки товаров с производителем Apple, то обновление коснется только двух первых из них.

Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850