Oracle - 具有虚拟列的联合表

Oracle - Union tables with a virtual column

我正在尝试从现有视图和 table 创建一个新的联合视图,我想在其中向查询添加一个虚拟列,根据 table/view,将标记虚拟列中的 true/false。像...

CREATE OR REPLACE VIEW myouterview AS 
SELECT id, field1, field2, ..., 'true' as editable FROM
mytable
union 
SELECT to_number(id), field1, field2, ..., 'false' as Editable FROM
myinnerview

对于上面的查询,行重复,一个条目为真,一个条目为假。我将不胜感激任何帮助。谢谢!

你可以试试这样的...

CREATE OR REPLACE VIEW myviewouter AS 
SELECT id, field1, field2, ..., 'true' as editable FROM
mytable
union 
SELECT to_number(id), field1, field2, ..., 'false' as Editable FROM
myview B
where not Exists (select 1 from mytable A where A.id=to_number(B.id))