sql - Oracle SQL Developer 使用“WITH AS”、“INSERT INTO”、“SELECT”组合
问题描述
我正在想办法做到这一点。
我有一个只有读取权限的表,所以我们称它为existing_table。我想有一个使用“with as”语句的参考表,并在我的参考表中插入一个新行。
我的代码是:(假装existing_table 已准备好使用)
INSERT INTO NEW_TABLE ( COLUMN_A, COLUMN_B)
VALUES (1, 'A')
WITH NEW_TABLE
AS (SELECT * from EXISTING_TABLE)
SELECT * from NEW_TABLE
但是,它不起作用。请帮忙!!!!!“WITH”是它给我错误的地方。如果我在 with as 之后将 insert 移动到语句中,那么“INSERT”就是它给我错误的地方。
我的问题是如何使用 with/insert/select 语句?
解决方案
将标识符的名称更改为 WITH 子句中的其他名称,因为您的名称相同会导致歧义。不管怎样,我猜你想要喜欢
Create Table
NEW_TABLE AS SELECT *
FROM EXISTING_TABLE;
SELECT * FROM NEW_TABLE