Самоучитель по SQL-сервер в Linux

         

Создание таблиц на базе существующих таблиц

Команда SELECT с секцией INTO TABLE создает новую таблицу, структура и содержимое которой определяются итоговым набором запроса. Синтаксис:

SELECT цели_выборки

INTO [ TABLE ] новая_таблица FROM старая_таблица

В этом варианте команда SELECT косвенно выполняет команду CREATE TABLE. Имена и типы полей, а также содержимое таблицы определяются параметрами итогового набора. Возвращаемое в ответ сообщение «SELECT» указывает на то, что команда была успешно выполнена, а в базе данных создана новая таблица. В листинге 4.52 приведен пример создания таблицы stock_backup по данным таблицы stock.

Листинг 4.52. Создание таблицы на основе данных другой таблицы

booktown=# SELECT * INTO

stock_backup booktown=# FROM stock;

SELECT

Таблица, указанная в секции INTO, не должна существовать, иначе происходит ошибка. В этом случает данные не сохраняются, а запрос завершается неудачей. Следует помнить, что ключевое слово TABLE является необязательным.




Содержание раздела