我在 Oracle 中有一张表,包含大约 5500 万条记录,并在日期列上进行了分区。
该表根据某个位置每天存储大约 600,000 条记录。
现在,在过程中的一个选择查询中使用了一些分析函数,例如前导、滞后、row_number() over(partition by col1, date order by col1, date ) 由于“partition by”和“order by”而花费了太多时间' 日期列上的子句。
还有其他方法可以优化查询吗?
我在 Oracle 中有一张表,包含大约 5500 万条记录,并在日期列上进行了分区。
该表根据某个位置每天存储大约 600,000 条记录。
现在,在过程中的一个选择查询中使用了一些分析函数,例如前导、滞后、row_number() over(partition by col1, date order by col1, date ) 由于“partition by”和“order by”而花费了太多时间' 日期列上的子句。
还有其他方法可以优化查询吗?
您是否考虑过使用物化视图来存储分析函数的结果?
有关 MV 的更多信息
http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_6002.htm