我有一个包含多个连接的大型查询,包括一个子查询(保存为视图)。基本上它看起来像这样。
Select
sum(a.amount),
case when a.criteria1 = 'c' then 'something'
when v.min_rank = 2 then 'something else'
....
else 'other' end
from main_table a
left join view v
on a.column1 = v.column1
group by
case when a.criteria1 = 'c' then 'something'
when v.min_rank = 'd' then 'something else'
....
else 'other' end
视图在哪里
select min(c.rank) as min_rank, a.column1
from main_table a
left join crieria c
on c.criteria = a.some_column
group by a.column1
的Oracle
由于某种原因,聚合导致我的子查询(视图)不连接(v.columns为null)。 (如果我不总和并通过v.columns删除该组不为null)使用临时表替换子查询可以解决问题,但我不清楚为什么。他们是创建临时表的解决方案,还是可能的原因(内存问题?)?
由于