Spec-Zone.ru › SQLite

СОЗДАНИЕ ВИДА

1. Синтаксис

create-view-stmt:

СОЗДАТЬ ВРЕМЕННЫЙ ВРЕМЕННЫЙ ВИД ЕСЛИ НЕ СУЩЕСТВУЕТ имя_схемы . имя_вида ( имя_столбца ) КАК запрос ,

select-stmt:

С РЕКУРСИВНАЯ выражение-с-общим-табличным-выражением , ВЫБЕРИТЕ УНИКАЛЬНЫЕ столбец-результата , ВСЕ ИЗ таблицы-или-подзапроса запрос-объединения , ГДЕ выражение СГРУППИРОВАТЬ ПО выражение ПРИ выражение ,
ОКНО имя-окна КАК определение-окна , ЗНАЧЕНИЯ ( expr ) , , комбинированный-оператор select-core ПОРЯДОК ПО ЛИМИТ expr term-сортировки , СМЕЩЕНИЕ expr , expr

common-table-expression:

имя_таблицы ( имя_столбца ) КАК НЕ МАТЕРИАЛИЗОВАННЫЙ ( выражение_select ) ,

оператор_составного_выражения:

ОБЪЕДИНЕНИЕ ОБЪЕДИНЕНИЕ ПЕРЕСЕЧЕНИЕ ИСКЛЮЧЕНИЕ ВСЕ

выражение:

литеральное значение связываемый параметр имя схемы . имя таблицы . имя столбца унарный оператор expr expr бинарный оператор expr имя функции ( аргументы функции ) фильтрующее условие over-clause ( expr ) , CAST ( expr AS имя типа
) expr COLLATE имя_сортировки expr НЕ ПОДОБНО GLOB REGEXP СОПОСТАВИТЬ expr expr ESCAPE expr expr ISNULL NOTNULL НЕ NULL expr ЕСТЬ НЕ РАЗЛИЧНЫМ ИЗ expr
expr НЕТ МЕЖДУ expr И expr expr НЕТ В ( select-stmt ) expr , schema-name . table-function ( expr ) table-name , НЕТ СУЩЕСТВУЕТ ( select-stmt )
CASE expr WHEN expr THEN expr ELSE expr END raise-function

filter-clause:

FILTER ( WHERE expr )

function-arguments:

DISTINCT expr , * ORDER BY ordering-term ,

буквальное значение:

CURRENT_TIMESTAMP числовое литерал строковое литерал байтовое литерал NULL ИСТИНА ЛОЖЬ ТЕКУЩЕЕ_ВРЕМЯ ТЕКУЩАЯ_ДАТА

оператор over:

СВЕРХУ имя_окна ( имя_базового_окна РАЗДЕЛЁННЫЙ ПО выражение , ПОРЯДОК ПО термин_упорядочивания , спецификация_кадра )

спецификация_кадра:

ГРУППЫ МЕЖДУ НЕОГРАНИЧЕННЫЕ ПРЕДШЕСТВУЮЩИЕ И НЕОГРАНИЧЕННЫЕ СЛЕДУЮЩИЕ ДИАПАЗОН СТРОКИ НЕОГРАНИЧЕННЫЕ ПРЕДШЕСТВУЮЩИЕ выр ПРЕДШЕСТВУЮЩИЕ ТЕКУЩИЙ СТРОКА выр ПРЕДШЕСТВУЮЩИЕ ТЕКУЩИЙ СТРОКА выр СЛЕДУЮЩИЕ выр ПРЕДШЕСТВУЮЩИЕ ТЕКУЩИЙ СТРОКА выр СЛЕДУЮЩИЕ
ИСКЛЮЧИТЬ ТЕКУЩИЙ СТРОКА ИСКЛЮЧИТЬ ГРУППА ИСКЛЮЧИТЬ СВЯЗИ ИСКЛЮЧИТЬ НЕТ ДРУГИЕ

функция raise:

ВЫЗОВ ( ВОЗВРАТ , сообщение-ошибки ) ИГНОРИРОВАТЬ ПРЕРВАТЬ НЕУДАЧА

имя типа:

имя ( число со знаком , число со знаком ) ( число со знаком )

число со знаком:

+ числовое значение -

оператор JOIN:

table-or-subquery join-operator table-or-subquery join-constraint

join-constraint:

USING ( column-name ) , ON expr

join-operator:

NATURAL LEFT OUTER JOIN , RIGHT FULL INNER CROSS

join-operator:

NATURAL LEFT OUTER JOIN , <polygon class="fill" points="378,
expr COLLATE collation-name DESC ASC NULLS FIRST NULLS LAST

столбец-результат:

expr AS имя_псевдонима_столбца * имя_таблицы . *

таблица или подзапрос:

schema-name . table-name AS table-alias INDEXED BY index-name NOT INDEXED table-function-name ( expr ) , AS table-alias ( select-stmt ) ( table-or-subquery ) ,
join-clause

window-defn:

( base-window-name PARTITION BY expr , ORDER BY ordering-term , frame-spec )

frame-spec:

ГРУППЫ МЕЖДУ НЕОГРАНИЧЕННЫЕ ПРЕДШЕСТВУЮЩИЕ И НЕОГРАНИЧЕННЫЕ СЛЕДУЮЩИЕ ДИАПАЗОН СТРОКИ НЕОГРАНИЧЕННЫЕ ПРЕДШЕСТВУЮЩИЕ expr ПРЕДШЕСТВУЮЩИЕ ТЕКУЩИЙ СТРОКА expr ПРЕДШЕСТВУЮЩИЕ ТЕКУЩИЙ СТРОКА expr СЛЕДУЮЩИЕ expr ПРЕДШЕСТВУЮЩИЕ ТЕКУЩИЙ СТРОКА expr СЛЕДУЮЩИЕ
Исключить Текущий Строка Исключить Группа Исключить Связи Исключить Нет Другие

2.Описание

Команда CREATE VIEW присваивает имя предварительно подготовленному оператору SELECT. После создания представления его можно использовать в операторе FROM другого оператора SELECT вместо имени таблицы.

Если ключевое слово "TEMP" или "TEMPORARY" встречается между "CREATE" и "VIEW", то создаваемое представление будет видно только подключению к базе данных, которое его создало, и автоматически удаляется при закрытии подключения к базе данных.

Если указано имя схемы, то представление создается в указанной базе данных. Ошибка возникает при указании имени схемы и ключевого слова TEMP для представления, за исключением случая, когда схемой является "temp". Если имя схемы не указано, и ключевое слово TEMP отсутствует, представление создается в основной базе данных.

Вы не можете удалить, вставить или обновить представление. Представления в SQLite являются только для чтения. Однако во многих случаях вы можете использовать триггер INSTEAD OF для представления для достижения той же цели. Представления удаляются с помощью команды DROP VIEW.

Если за именем представления следует список имен столбцов, то этот список определяет имена столбцов представления. Если список имен столбцов опущен, имена столбцов представления выводятся из имен столбцов результирующего набора в операторе select-stmt. Рекомендуется использовать список имен столбцов. Или, если список имен столбцов опущен, столбцы результата в операторе SELECT, определяющем представление, должны иметь хорошо определенные имена, используя синтаксис «AS имя_столбца». SQLite позволяет создавать представления, зависящие от автоматически сгенерированных имен столбцов, но следует избегать их использования, так как правила генерации имен столбцов не являются определенной частью интерфейса и могут измениться в будущих выпусках SQLite.

Синтаксис списка имен столбцов был добавлен в SQLite версии 3.9.0 (2015-10-14).

Последнее изменение этой страницы 08.01.2022 05:02:57 UTC

SQLite is in the Public Domain.
https://sqlite.org/lang_createview.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API