Update (SQL)
UPDATE — оператор языка SQL, позволяющий обновить значения в заданных столбцах таблицы.
Синтаксис
UPDATE [top(x)] <объект>
SET <присваивание1 [, присваивание2, ...]>
[WHERE <условие>];
- top(x) — команда выполнится только х раз
- <объект> — объект, над которым выполняется действие (таблица или представление)
- <присваивание> — присваивание, которое будет выполняться при каждом выполнении условия <условие>, или для каждой записи, если отсутствует раздел where
- <условие> — условие выполнения команды
- SET — после ключевого слова должен идти список полей таблицы, которые будут обновлены и непосредственно сами новые значения в виде
- имя поля="значение"
Примеры
UPDATE tbl_books SET price = 0 WHERE quantity = 0;
UPDATE PersonalInfo SET street = 'Лизюкова', city = 'Воронеж' WHERE name = 'Котёнок';
UPDATE temp a SET
deptno = (SELECT deptno FROM dept WHERE loc = 'BOSTON'),
(sal, comm) = (
SELECT 1.1*AVG(sal), 1.5*AVG(comm)
FROM temp b
WHERE a.deptno = b.deptno
)
WHERE deptno IN (SELECT deptno FROM dept WHERE loc = 'DALLAS' OR loc = 'DETROIT');
В последнем выражении выполняются следующие операции:
- Модифицируются только те служащие, которые работают в Dallas или Detroit
- Устанавливается значение колонки deptno в значение такое же, как и у служащих из Бостона
- Устанавливается жалованье каждого служащего в 1.1 раз больше среднего жалованья всего отдела
- Устанавливаются комиссионные каждого служащего в 1.5 раза больше средних комиссионных всего отдела.