2017-03-22 49 views
0

我們在數據庫中看到了一些意見,這些意見花費更多時間並遇到一些性能問題。任何人都可以建議或推薦在性能方面處理視圖的最佳方式。如何從MySQL的視圖中獲得最佳性能

以下是觀點的例子格式,我們使用:

CREATE ALGORITHM VIEW `v_UK_CM_Demands_Audit_History` 
AS select `UK_CM_Demand_Audit_History`.`demandAuditId` AS `demandAuditId`, 
`v_UK_CM_Consolidated_Generic_Demand_Details_Temp`.`genericDemandId` AS `genericDemandId`, 
`UK_CM_Demand_Audit_History`.`demandTypeId` AS `demandTypeId`, 
`v_UK_CM_Consolidated_Generic_Demand_Details_Temp`.`policyNumber` AS `policyNumber`, 
`v_UK_CM_Consolidated_Generic_Demand_Details_Temp`.`demandCreatedDateTime` AS `demandCreatedDateTime`, 
`UK_CM_Demand_Audit_History`.`transactionType` AS `transactionType`, 
`UK_CM_Demand_Audit_History`.`previousValue` AS `previousValue`, 
`UK_CM_Demand_Audit_History`.`currentValue` AS `currentValue`, 
`UK_CM_Demand_Audit_History`.`modifiedBy` AS `modifiedBy`, 
`UK_CM_Demand_Audit_History`.`modifiedDateTime` AS `modifiedDateTime` 
from (`v_UK_CM_Consolidated_Generic_Demand_Details_Temp` 
    join `UK_CM_Demand_Audit_History` 
    on((`v_UK_CM_Consolidated_Generic_Demand_Details_Temp`.`genericDemandId` = `UK_CM_Demand_Audit_History`.`genericDemandId`))) ; 

任何人都建議我,我需要做,這樣我可以期待一些更好的性能變化或改進。 我是新來的意見,所以請給你寶貴的建議。

在此先感謝!

enter image description here

+0

請張貼的講解和有問題的表的模式。 –

+0

嗨內維爾,我已經添加了解釋 – Chowdary

+0

您正在使用查詢使用視圖。您將不得不添加該查詢。視圖只是簡化查詢的一種方式,它不是獨立存在的,並且基本上只要將代碼粘貼到使用它的任何位置即可。所以你仍然需要優化你的實際查詢(當然,對於使用這個視圖的不同查詢,優化當然會不同)。另外,你的'explain'輸出是不可讀的,請從中刪除一個表格。 – Solarflare

回答

0

據解釋,既不表有任何索引。

如果你可以執行下面,應該加快速度吧:

create index genericDemandId on v_UK_CM_Consolidated_Generic_Demand_Details_Temp(genericDemandId); 
create index genericDemandId on UK_CM_Demand_Audit_History(genericDemandId); 
相關問題