UPDATE#

Синтаксис#

UPDATE table_name SET [ ( column = expression [, ... ] ) ] [ WHERE condition ]

Описание#

Обновляет значения выбранных столбцов в существующих строках таблицы.

Столбцы, указанные в присваиваниях column = expression, будут обновлены для всех строк, соответствующих условию WHERE.

Если тип обновляемого значения не совпадает с типом колонки, будет осуществлена попытка автоматического приведения типа значения к типу колонки. Если автоматическое приведение типов невозможно или приводит к неожиданному изменению значения, будет возвращена ошибка.

Примеры#

Обновление статуса всех покупок, которым не назначена дата отгрузки:

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

Обновление учетной записи менеджера и даты назначения учетной записи для всех клиентов:

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

Обновление записи менеджера путем присваивания имени сотрудника, соответствующего идентификатору менеджера:

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

Ограничения#

Некоторые коннекторы имеют ограниченную поддержку или не поддерживают UPDATE. Дополнительные сведения см. в документации по коннекторам.

См. также#

INSERT, DELETE, MERGE