Oracle:使用"自动增量"ID列创建视图

Bis*_*han 8 oracle plsql view oracle11g

我创建了一个view填充来自不同表的数据.我使用10 select statements并组合了那些select语句的结果UNION ALL.

我想添加primary key column到我的视图中.因为我必须XML在此使用数据创建文件view.所以我需要primary key column在我的XML建筑应用程序中使用一些进程.

我添加rownum了所有的select语句.但它返回了重复的ID.因为rownum在每个select语句中都从1开始.

然后我创建了一个序列并尝试使用nextval.但是我不能使用序列,因为我的select语句有group byorder by.

有没有办法做到这一点?

ryu*_*ice 12

您可以对联合进行选择,例如:

SELECT rownum(),*
FROM (SELECT * FROM tableA UNION ALL SELECT * FROM tableB)
Run Code Online (Sandbox Code Playgroud)

更新

SELECT rownum, t.*
FROM (SELECT * FROM tableA UNION ALL SELECT * FROM tableB) t
Run Code Online (Sandbox Code Playgroud)