|
Программирование >> Sql: полное руководство
Основные инструкции 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 подчиненный-запрос
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |