ฉันได้สร้างคำสั่ง SQL ที่ใช้ INNER JOIN ใน 9 ตารางแล้วคำสั่งนี้ใช้เวลานานมาก (มากกว่าห้านาที) ดังนั้นชาวบ้านของฉันแนะนำให้ฉันเปลี่ยน INNER JOIN เป็น LEFT JOIN เพราะการแสดงของ LEFT JOIN ดีกว่าแม้ว่าฉันจะรู้ หลังจากที่ฉันเปลี่ยนความเร็วของการสืบค้นก็เพิ่มขึ้นอย่างมาก
ฉันอยากรู้ว่าทำไม LEFT JOIN ถึงเร็วกว่า ININ JOIN
คำสั่ง SQL ของฉันมีลักษณะดังนี้:
 SELECT * FROM A INNER JOIN B ON ... INNER JOIN C ON ... INNER JOIN Dเป็นต้น
อัปเดต: นี่เป็นบทสรุปของสคีมาของฉัน
FROM sidisaleshdrmly a -- NOT HAVE PK AND FK
    INNER JOIN sidisalesdetmly b -- THIS TABLE ALSO HAVE NO PK AND FK
        ON a.CompanyCd = b.CompanyCd 
           AND a.SPRNo = b.SPRNo 
           AND a.SuffixNo = b.SuffixNo 
           AND a.dnno = b.dnno
    INNER JOIN exFSlipDet h -- PK = CompanyCd, FSlipNo, FSlipSuffix, FSlipLine
        ON a.CompanyCd = h.CompanyCd
           AND a.sprno = h.AcctSPRNo
    INNER JOIN exFSlipHdr c -- PK = CompanyCd, FSlipNo, FSlipSuffix
        ON c.CompanyCd = h.CompanyCd
           AND c.FSlipNo = h.FSlipNo 
           AND c.FSlipSuffix = h.FSlipSuffix 
    INNER JOIN coMappingExpParty d -- NO PK AND FK
        ON c.CompanyCd = d.CompanyCd
           AND c.CountryCd = d.CountryCd 
    INNER JOIN coProduct e -- PK = CompanyCd, ProductSalesCd
        ON b.CompanyCd = e.CompanyCd
           AND b.ProductSalesCd = e.ProductSalesCd 
    LEFT JOIN coUOM i -- PK = UOMId
        ON h.UOMId = i.UOMId 
    INNER JOIN coProductOldInformation j -- PK = CompanyCd, BFStatus, SpecCd
        ON a.CompanyCd = j.CompanyCd
            AND b.BFStatus = j.BFStatus
            AND b.ProductSalesCd = j.ProductSalesCd
    INNER JOIN coProductGroup1 g1 -- PK = CompanyCd, ProductCategoryCd, UsedDepartment, ProductGroup1Cd
        ON e.ProductGroup1Cd  = g1.ProductGroup1Cd
    INNER JOIN coProductGroup2 g2 -- PK = CompanyCd, ProductCategoryCd, UsedDepartment, ProductGroup2Cd
        ON e.ProductGroup1Cd  = g2.ProductGroup1Cd
          
coUOM? ถ้าไม่ใช่คุณอาจใช้การรวมกึ่งได้ ถ้าใช่คุณจะสามารถใช้UNIONเป็นทางเลือก การโพสต์เพียงFROMข้อของคุณคือข้อมูลไม่เพียงพอที่นี่