不断增加对 MSSQL 数据库的查询执行时间

问题描述 投票:0回答:0

我正在 SSMS 中创建一个数据库查询,该查询包含多个 INNER JOIN 和 ORDE BY。当尝试连续多次调用此查询时,查询的每次调用都需要更多时间来执行。 我在查询中包含实时查询统计信息和客户端统计信息以跟踪消耗时间的内容,但问题没有发生。当我创建更简单的数据库查询时,问题也不会发生

现在,我在包含我的查询的数据库服务器上创建了一个过程,调用这个过程不会导致调用查询本身时出现的问题。 请告诉我可能导致错误的原因以及解决方法

SELECT Storage_Occupancy.NestNo AS Position,
    (SELECT        Storage_NestType.NestTypeNumber
                   FROM Storage_NestType INNER JOIN
                        Storage_ProductToNestType ON Storage_NestType.IdNestType = Storage_ProductToNestType.IdNestType
                   WHERE (Storage_ProductToNestType.IdProduct = Storage_Occupancy.IdProduct)) AS NestTypeNumber, ISNULL( Storage_Nest.SerialNumber,Storage_Occupancy.IdNest) AS SerialNumber, Storage_Occupancy.Quantity
                        FROM Storage_NestType INNER JOIN
                                     Storage_Nest ON Storage_NestType.IdNestType = Storage_Nest.IdNestType RIGHT OUTER JOIN
                                     Storage_Occupancy ON Storage_Nest.IdNest = Storage_Occupancy.IdNest
                   WHERE Storage_Occupancy.IdPlace = 100 ORDER BY Position

Storage_Occupancy 表包含约 3000 条记录,其他表各约 20 条

sql sql-server ssms sql-execution-plan
© www.soinside.com 2019 - 2024. All rights reserved.