Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Топовые новости
Новое

Инструкция UPDATE cоветы и хитрости PostgreSQL

Платформа PostgreSQL поддерживает стандартный синтаксис ANSI с парой небольших изменений. Поддерживается добавление предложения FROM. К другим изменениям относится отсутствие поддержки ключевого слова ARRAY, но наличие поддержки самих массивов. Синтаксис инструкции UPDATE в PostgreSQL следующий.

UPDATE. [ONLY] {имя_тзблицы | имя_представления

SET имя_столбца1={DEFAULT | NULL | скалярное_выражение}

имя_столбца2={DEFAULT | NULL | скалярное_вьражение}[…]

[FROM {таблица1 [AS псевдоним], таблица2 [AS псевдоним] [, …]}] [WHERE условие_поиска | WHERE CURRENT OF имя_курсора]

Большинство синтаксических элементов соответствует стандарту ANSI. Единственный нестандартный элемент следующий.

FROM

Предоставляет возможность создать для указания обновляемых строк высоко избирательный критерий на основе соединения. Предложение FROM не нужно, если при указании строк используется только одна таблица — целевая.

В следующем примере нам нужно обновить значение joblvl для тех сотрудников, чей job_id равен 12, a min_Ivl равен 25. Этого можно добиться при помощи большого, сложного подзапроса, а можно создать соединение при помощи предложения FROM.

UPDATE employee SET job_lvl=80 FROM employee AS e, jobs AS j WHERE e.job_id=j.job_id

AND j.job_id=12 AND].min_lvl=25;

Все прочие аспекты стандарта ANSI поддерживаются в полной мере.

Источник