这里的要求是向用户提供特定工厂或零件编号的预测详细信息。预测详细信息来自几个源表并由一个视图联合。在此视图上创建一个物化视图 (MV),以便更快地访问数据。在记录了这支 MV 之后,它的 500K+ 即将到来。
我们有一个 DOTNET 应用程序网页,用户在其中选择工厂或输入零件并从上述 MV 请求这些过滤器的数据。部分过滤器工作正常,但植物过滤器几乎需要 20 分钟来提取某些植物的数据。
根据进一步分析,我发现很少有植物在 MV 中有超过 50K 行。检索 50K+ 记录有问题吗?
以下是查询,当 Executed 快速运行,但同时使用 Execute Script 选项执行时,需要 5-6 分钟才能返回行。
SELECT /*+ hint first_rows(1000) */
PLANT,MATERIAL_NBR,SOLD_TO_CODE,SHIP_TO_CODE,SHIP_TO_NAME,SHIP_TO_PLANT,SHIP_TO_LABEL_FMT,ORD_QTY,ALLOC_QTY,
due_date, PRIME_CNTR,PRIME_UOI,SEC_CNTR,BASE_UOM,ORDER_TYPE,SHIP_POINT,REC_TYPE
FROM GTCPDBA.VW_FORECAST_REQMNTS_DET
Where PLANT ='FR10';
请提出一些意见。