簡體   English   中英

您將如何優化此mysql查詢?

[英]How would you optimize this mysql query?

任何人都可以幫助我優化此查詢:

SELECT DISTINCT
A.X1,      
A.X2   
FROM TABLEAA A
JOIN TABLEBB B ON A.Y = B.Y AND B.Z1='SELECTED1' AND B.W NOT LIKE 'SLECTED3'
JOIN TABLECC C ON A.Y = C.Y AND C.Z2='SELECTED2'
AND A.W NOT LIKE 'SLECTED3'

鑒於

TABLEAA:100萬個條目TABLEBB:1700萬個條目TABLECC:120萬個條目

它可以工作,但幾乎需要8到10秒。

還有其他寫方法嗎?

編輯:TableBB的主要索引是B.Z1和BY的組合,TableCC的主要索引是C.Z2和CY的組合,TableAA的主要索引是AY

我希望這會更好。

SELECT DISTINCT A.X1, A.X2   
FROM TABLEAA AS A
INNER JOIN(TABLEBB AS B)
   ON(A.Y = B.Y)
INNER JOIN(TABLECC AS C)
   ON(A.Y = C.Y)
WHERE B.Z1 = 'SELECTED1' AND
      B.W NOT LIKE '%SLECTED3%' AND
      C.Z2='SELECTED2' AND
      A.W NOT LIKE '%SLECTED3%'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM