我有一个看起来有点像这样的查询:
select
...,
my_view.alias_name
from
tbl1 join
tbl2 on
tbl1.key = tbl2.key join
tbl3 on
tbl3.key = tbl3.key join
(
select
...,
(max(...) keep (...)) alias_name
from
...
) my_view on
tbl3.key = my_view.key
where
...;
它不起作用,因为当我以这种方式将内联视图加入表时,alias_name
没有设置(保持(max(...) keep (...))
我不知道是否可以在select my_view.name_or_alias
我改为在内联视图之后加入表格。
select
...,
my_view.alias_name
from
(
select
...,
(max(...) keep (...)) alias_name
from
...
) my_view join
tbl3 on
my_view.key = tbl3.key join
tbl2 on
tbl3.key = tbl2.key join
tbl1 on
tbl2.key = tbl1.key
where
...;
是否有任何解释或文档讨论这个或者它是未定义/随机行为?有什么方法可以让它与加入表格的内联视图一起工作?我找不到有关此的任何信息。