Программирование >>  Sql: полное руководство 

1 ... 232 233 234 [ 235 ] 236 237 238 ... 264


Основные инструкции DML

Одиночная инструкция select возврашает одну запись и помешает ее компоненты в базовые переменные (во встроенном SQL) или в переменные хранимой процедуры:

SELECT [ALL I DISTINCT](список-возвращаемых-элементов I }

INTO список-базовых-переменных

FROM список-ссылок-на-таблицы [WHERE условие-отбора]

Интерактивная инструкция select возврашает набор записей произвольного размера (допустима только в интерактивном режиме; во встроенном SQL и в хранимых процедурах необходимо использовать специальные инструкции, оперирующие наборами записей):

SELECT [ALL i DISTWCT] {список-возвращаемых-злементов I *}

INTO список-переменных

FROM список-ссылок-на-таблмцы [WHERE условие-отбора] [GROUP BY список-ссылок-на-столбцы] [HAVING условие-отбора] [ORDER BY список-сортируемых-элементов]

Эти инструкции модифицируют информацию в базе данных:

INSERT INTO таблица [[список-столбцов)]

{VALUES (список-вставляемых-злементов) \ выражение-запроса]

DELETE FROM таблица [WHERE условие-отбора]

UPDATE таблица

SET список-выражений-присваивания [WHERE условие-отбора]

Инструкции обработки транзакций

Эти инструкции сигнализируют об окончании транзакции SQL.

COMMIT [WORK] ROLLBACK [WORK]

Инструкции для работы с наборами записей

Эти инструкции программного SQL служат для выборки данных и для их позиционного обновления:

DECLARE набор-записей [SCROLL] CURSOR FOR выражение-запроса [ORDER BY список-сортируемых-элементов] [FOR /READ ONLY ) UPDATE [OF список-столбцов)})



open набор-записей close набор-записей

fetch [[направление-выборки] from] набор-записей into список-вазовых-переменных

delete from таблица where current of набор-записей

update таблица

set список-вырахеиий-присваивания where current of набор-записей

Необязательное направление выборки задается следующим образом:

next I prior I first I last absolute номер-залиси relative номер-записи

Номер записи может быть задан в виде базовой переменной или литерала

Выражения запросов

Базовая спецификация запроса имеет следующий вид-

select [all DISTinCT]{список-возвратаемых-элементов *)

from список-ссилок-на-таблицы [where условие-отбора] [group by список-ссылок-на-столбцы] [having условие-отбора]

Ссылки на таблицы в предложении from могут быть такими:

простая ссылка на таблицу, содержащая (возможно, уточненное) имя таблицы;

возвращенная ссылка на таблицу, содержащая подчиненный запрос (см. ниже), результатом которого является таблица (не все СУБД допускают использование подчиненных запросов в предложении from);

ссылка на объединенную таблицу (см. ниже), полученную путем вьшолнения операции объединения с несколькими операндами (не все СУБД допускают объединение таблиц в предложении from).

В соответствии с синтаксисом SQL2 объединение таблиц задается следующим образом (на практике в различных СУБД поддерживаются разные типы объединений и допускаются отличия от приведенного ниже синтаксиса).

Элемент Синтаксис

обьединенная-таблица внутреннее-объединение \ внешнее-объединение \ расширенный-

запрос-на-объединение I перекрестное-объединение I (объединенная-таблица)

внутреннее-обьединение ссшка-на-таблииу [natural] [inner] join ссылка-на-таблицу I

ссылка-на-таблицу [inner] join ссылка-на-таблииу [ спецификация-объединения]

внешнее-объединение ссылка-на-таблииу [natural] [left[right[full]

outer join ссылка-на-таблицу I ссылка-на-таблииу [ left right I full] outer join ссылка-на-таблицу [ спецификация-объединения]



Элемент

расширенный-запрос-на-обьединение

перекрестное-объединение

спецификация-объединения

Синтаксис

ссылка-на-таблицу union join ссылка-на-таблицу

ссылка-на-таблицу cross join ссылка-на-таблицу on условие-отбора I using [список-столбцов)

Стандарт SQL2 разрешает объединять базовые спецификации запроса с помощью операций union, except и intersect, создавая выражение-запроса. Заключенное в скобки, выражение запроса становится подчиненным запросом, который может присутствовать в различных местах инструкции select (например, в определенных условиях отбора в предложении where). Эти операции поддерживаются не во всех СУБД. Упрощенный их синтаксис описан ниже (без учета приоритета операций).

Элемент

выражение-запроса

выражен ие-сяожения

выражение-вычитания

выражение-пересечения

спецификация-соответствия подчиненный-запрос

Синтаксис

таблица \ объединенная-таблица \ выражение-сложения выражение-вычитания \ выражение-пересечения \ [ выражение-запроса)

выражение-запроса union [all] [спецификация-соответствия] выражение-запроса

выражение-запроса except [all]

[ спецификация-соответствия ] выражение-запроса

выражение-запроса intersect [all]

[ спецификация-соответствия] выражение-запроса

corresponding [by [СПиСОК-СтОлбцОв) ]

{выражение -запроса)

Условия отбора

Эти выражения используются при выборке строк из таблиц базы данных:

Элемент

условие-отбора

отбираемый-элемент проверка-отбора

проверка-сравнения

проверка-вхождения

проверка-подобия

проверка-на-null

проверка-на-принадлежность

многократная-проверка

проверка-на-существование

Синтаксис

отбираемый-элемент \ отбираемый-элемент {and I or} отбираемый-элемент

[NOT] {проверка-отбора \ [условие-отбора) }

проверка-сравнения \ проверка-вхождения I проверка-подобия \ проверка-на-null \ проверка-на-принадлежность \ многократная-проверка проверка-на-существование

выражение (= о < <= I > I >=} {выражение \ подчиненный-запрос}

выражение [not] between выражение and выражение ссьыка-на-столбец [not] like значение [escape значение] ссылка-на-столбец is [not] null

выражение [not] in {список-значений \ подчиненный-запрос] выражение {= i о < <= > >= } [all any some] подчиненный-запрос exists подчиненный-запрос



1 ... 232 233 234 [ 235 ] 236 237 238 ... 264

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика