我需要在一个查询中查询Oracle数据库中的多个表,以获得一个typeahead函数,这意味着我需要查询主页上的每个按键。
select * from
(select * from table1
union all
select * from table2
union all
select * from table3
union all
select * from table4
)
where colume_name like '%xxx%'
所有的联合将产生一个约300000条记录的数据集。
无论如何,这个查询是否可以进行优化,以便Oracle以某种方式将统一的数据集保存在缓存或临时表中,以便用于下一次按键?
正如您所说,您可以使用on commit preserve rows
选项创建一个(全局(临时表,将结果存储在其中,并在该会话期间使用数据。