Ответ 1
Если 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 с помощью Oracle. Мой запрос:
SELECT * INTO new_table FROM old_table;
Но я получаю следующую ошибку:
SQL Error: ORA-00905: missing keyword
00905. 00000 - "missing keyword"
Любые идеи, что неправильно?
Стандартное поведение выше должно быть таким, как я изначально думал: Однако Oracle внедрил это совершенно по-другому в своем собственном диалекте SQL Oracle Docs on Insert... Выбрать
Если 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;