Структуризированный язык запросов (SQL)


Особенности и синтаксис предложений модификации - часть 2


Предложение UPDATE также имеет два формата. Первый из них:

UPDATE (базовая таблица | представление} SET столбец = значение [, столбец = значение] ... [WHERE фраза]

где значение - это

столбец | выражение | константа | переменная

и может включать столбцы лишь из обновляемой таблицы, т.е. значение одного из столбцов модифицируемой таблицы может заменяться на значение ее другого столбца или выражения, содержащего значения нескольких ее столбцов, включая изменяемый.

При отсутствии WHERE фразы обновляются значения указанных столбцов во всех строках модифицируемой таблицы. WHERE фраза позволяет сократить число обновляемых строк, указывая условия их отбора.

Второй формат описывает предложение, позволяющее производить обновление значений модифицируемой таблицы по значениям столбцов из других таблиц. К сожалению в ряде СУБД эти форматы отличаются друг от друга и от стандарта. Для примера приведем один из таких форматов:

UPDATE {базовая таблица | представление} SET столбец = значение [, столбец = значение] ... FROM {базовая таблица | представление} [псевдоним], {базовая таблица | представление} [псевдоним] [,{базовая таблица | представление} [псевдоним]] ... [WHERE фраза]

Здесь перечень таблиц фразы FROM содержит имя модифицируемой таблицы и тех таблиц, значения столбцов которых используются для обновления. При этом, естественно, таблицы должны быть связаны между собой в WHERE фразе (см.п.3.2.3), которая, кроме того, служит для указания условий отбора обновляемых строк модифицируемой таблицы.

В значениях, находящихся в правых частях равенств фразы SET, следует уточнять имена используемых столбцов, предваряя их именем таблицы (псевдонима).

3.6 | Содержание | 4.2




Начало  Назад  Вперед



Книжный магазин