ВЫБРАТЬ В, используя Oracle

Я пытаюсь сделать ВЫБРАТЬ В, используя Oracle. Мой запрос:

SELECT * INTO new_table FROM old_table;

Но я получаю следующую ошибку:

SQL Error: ORA-00905: missing keyword
00905. 00000 -  "missing keyword"

Есть идеи что не так?


Стандартное поведение вышеизложенного должно быть таким, как я изначально думал: однако Oracle реализовал его совершенно по-разному на своем собственном диалекте SQL Документы Oracle при вставке... Выбрать

4 ответа

Решение

Если NEW_TABLE уже существует, тогда...

insert into new_table select * from old_table
/

Если вы хотите создать NEW_TABLE на основе записей в OLD_TABLE ...

create table new_table as select * from old_table
/

select into используется в pl/sql для установки переменной в значения поля. Вместо этого используйте

create table new_table as select * from old_table

Использование:

create table new_table_name 
as
select column_name,[more columns] from Existed_table;

Пример:

create table dept
as
select empno, ename from emp;

Если таблица уже существует:

insert into new_tablename select columns_list from Existed_table;

Попробуйте использовать приведенный ниже оператор вместо использования select into в оракуле:

выберите * из (выберите * из таблицы1) таблица2 ;

Другие вопросы по тегам