SQL查询比平时花费更多时间

时间:2019-10-10 12:17:22

标签: sql sql-server performance query-optimization sql-execution-plan

我的查询需要2个小时才能从数据库中获取250万行。我也检查了执行计划。索引也可以正常工作。

这是查询:

SELECT 
    GeneralJournalAccountEntry.RecId as [Transaction #],
    GENERALJOURNALACCOUNTENTRY.LEDGERACCOUNT AS [LEDGER WITH DIMENSIONS],
    DIMENSIONATTRIBUTE.NAME AS [DIMENSION TYPE],
    DIMENSIONATTRIBUTELEVELVALUE.DISPLAYVALUE as [DIMENSION VALUE]
FROM 
    DIMENSIONATTRIBUTE
INNER JOIN 
    DIMENSIONATTRIBUTEVALUE ON DIMENSIONATTRIBUTE.RECID = DIMENSIONATTRIBUTEVALUE.DIMENSIONATTRIBUTE
INNER JOIN 
    DIMENSIONATTRIBUTELEVELVALUE ON DIMENSIONATTRIBUTEVALUE.RECID = DIMENSIONATTRIBUTELEVELVALUE.DIMENSIONATTRIBUTEVALUE
INNER JOIN 
    DIMENSIONATTRIBUTEVALUEGROUPCOMBINATION ON DIMENSIONATTRIBUTELEVELVALUE.DIMENSIONATTRIBUTEVALUEGROUP = DIMENSIONATTRIBUTEVALUEGROUPCOMBINATION.DIMENSIONATTRIBUTEVALUEGROUP
INNER JOIN 
    GENERALJOURNALACCOUNTENTRY ON DIMENSIONATTRIBUTEVALUEGROUPCOMBINATION.DIMENSIONATTRIBUTEVALUECOMBINATION = GENERALJOURNALACCOUNTENTRY.LEDGERDIMENSION
INNER JOIN 
    GENERALJOURNALENTRY ON GENERALJOURNALENTRY.PARTITION = GENERALJOURNALACCOUNTENTRY.PARTITION AND GENERALJOURNALENTRY.RECID = GENERALJOURNALACCOUNTENTRY.GENERALJOURNALENTRY
WHERE
    DIMENSIONATTRIBUTE.NAME <> 'MainAccount'

1 个答案:

答案 0 :(得分:-1)

尝试一下可能会帮助您

如果查询从未完成,则必须获取估计的执行计划,而不是实际的执行计划。由于它只有一行,因此您拥有的最慢的计算机可能是:

与WITH(NOLOCK)一起使用

相关问题