Основные различия между командами SELECT INTO и CREATE TABLE AS:
- Назначение:
- SELECT INTO создаёт новую таблицу и заполняет её данными, вычисленными с помощью запроса. 1 Данные не возвращаются клиенту, как при обычном SELECT. 1
- CREATE TABLE AS создаёт таблицу и заполняет её данными, вычисленными командой SELECT. 2 Столбцы таблицы имеют имена и типы данных, связанные с выходными столбцами SELECT. 2
- Дополнительные возможности:
- CREATE TABLE AS предлагает дополнительный набор функций, предоставляемых SELECT INTO. 1 Например, позволяет указывать метод доступа к таблице или табличное пространство таблицы. 1
- При использовании CREATE TABLE AS сохраняется атрибут обнуляемости каждого столбца, который игнорируется SELECT INTO. 2
Таким образом, CREATE TABLE AS рекомендуется использовать как рекомендуемый синтаксис, так как он предлагает более широкий набор функций. 12