![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Задается временно именованный результирующий набор, называемый обобщенным табличным выражением (ОТВ). Он извлекается при выполнении простого запроса и определяется в области выполнения одиночной инструкции SELECT, INSERT, UPDATE или DELETE. Это предложение может использоваться также в инструкции CREATE VIEW как часть определяющей ее инструкции SELECT. Обобщенное табличное выражение может включать ссылки на само себя. Такое выражение называется рекурсивным обобщенным табличным выражением.
Синтаксические обозначения в Transact-SQL
Синтаксис
[ WITH <common_table_expression> [,...n ] ] <common_table_expression>::= expression_name [ (column_name [,...n ]) ] AS (CTE_query_definition)Аргументы
expression_name
Действительный идентификатор обобщенного табличного выражения. Имя аргумента expression_name должно отличаться от имени другого обобщенного табличного выражения, определенного в том же предложении WITH <общее_табличное_выражение>, но expression_name может совпадать с именем базовой таблицы или представления. Любая ссылка на аргумент expression_name в запросе использует обобщенное табличное выражение, но не базовый объект.
column_name
Задается имя столбца в обобщенном табличном выражении. Повторяющиеся имена в определении одного CTE-выражения не допускаются. Количество заданных имен столбцов должно совпадать с количеством столбцов в результирующем наборе CTE_query_definition. Список имен столбцов необязателен только в том случае, если всем результирующим столбцам в определении запроса присвоены уникальные имена.
CTE_query_definition
Задается инструкция SELECT, результирующий набор которой заполняет обобщенное табличное выражение. Инструкция SELECT для CTE_query_definition должна удовлетворять таким же требованиям, что и при создании представления, за исключением того, что CTE-выражение не может определять другое CTE-выражение. Дополнительные сведения см. в разделах «Примечания» и CREATE VIEW (Transact-SQL).
Если определено несколько параметров CTE_query_definition, определения запроса должны быть соединены одним из следующих операторов работы с наборами: UNION ALL, UNION, EXCEPT или INTERSECT.
Замечания
Дата публикования: 2015-02-03; Прочитано: 243 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!