簡體   English   中英

MYSQL慢查詢

[英]MYSQL Slow Query

我們的Java應用程序運行非常緩慢。

造成這種情況的原因多種多樣,其中主要原因之一可能是應用程序中的MySQL代碼使用兩個不同的表來獲取此數據並進行聯接。 有誰能建議如何更好地編寫此查詢以提高性能?

SELECT DISTINCT uniqueId
FROM advertisementmodule
JOIN advertisement ON advertisementmodule.idAdvertisement = advertisement.idAdvertisement
JOIN advertisementschedule ON advertisement.idAdvertisementSchedule = advertisementschedule.idAdvertisementSchedule
JOIN adschedulegroup ON advertisementschedule.idAdScheduleGroup = adschedulegroup.idAdScheduleGroup
WHERE adschedulegroup.publisherCode = 'ABC';

SELECT *
FROM taurustour
JOIN searchthemestaurus
WHERE uniqueId IN (
        '18538'
        ,'17142'
        ,'11248'
        ,'18458'
        )
    AND air IS true;

哪個表中的uniqueId是?

更具可讀性:

SELECT  DISTINCT uniqueId
    FROM  advertisementmodule AS m 
    JOIN  advertisement AS a
          ON m.idAdvertisement = a.idAdvertisement
    JOIN  advertisementschedule AS s
          ON a.idAdvertisementSchedule = s.idAdvertisementSchedule
    JOIN  adschedulegroup AS g
          ON s.idAdScheduleGroup = g.idAdScheduleGroup
    WHERE  g.publisherCode = 'ABC'; 

您是否有以PublisherCode 開頭的索引?

暫無
暫無

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

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