Question

J'exécute une procédure de magasin qui prend beaucoup de temps, en raison de laquelle je dois augmenter le délai d'expiration à près de 3 minutes, quelqu'un peut-il vous aider Sur les codes 100-500 mais lorsque le code dépasse en quelque sorte 20000, il ralentit et prend jusqu'à 3-4 minutes, ci-dessous le SP, quelqu'un peut-il m'aider à l'optimiser.

@GUID uniqueidentifier
-- Insert statements for procedure here
SELECT     
        COUNT(Code.allocatedVendorID) AS Amt, 
        MIN(Code.dateAllocated) AS dateAllocated, 
        derivedtbl_1.startID, derivedtbl_2.endID, 
        tbVendor.name, 
        Code.unitCost, Code.isFree, Code.isAcademic, 
        Code.isVoided, Code.GUID, Code.expiryDate
FROM         
       Code 
        INNER JOIN
              (SELECT     MIN(CodeID) AS startID, GUID
                FROM          Code AS tbAccessCode_1
                GROUP BY GUID) AS derivedtbl_1 
                ON Code.GUID = derivedtbl_1.GUID 
        INNER JOIN
              (SELECT     MAX(accessCodeID) AS endID, GUID
                FROM          Code AS tbAccessCode_1
                GROUP BY GUID) AS derivedtbl_2 
                ON Code.GUID = derivedtbl_2.GUID 
        INNER JOIN  tbVendor 
            ON Code.allocatedVendorID = tbVendor.vendorID
WHERE     (Code.GUID = @GUID) AND (Code.allocatedVendorID > 0)
GROUP BY
        derivedtbl_1.startID, derivedtbl_2.endID, 
        tbVendor.name, 
        Code.unitCost, Code.isFree, Code.isAcademic, 
        Code.isVoided, Code.GUID, Code.expiryDate

ORDER BY dateAllocated DESC

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top