【发布时间】:2019-03-20 21:52:21
【问题描述】:
我不知道我还能做些什么来提高这个查询的速度。我创建了非聚集索引,但结果是一样的。我有很多数据,Azure 给我带来了一些 DTU 问题。
您会推荐什么索引?
SELECT
SUM(t.total_amount) as SumaAmount,
COUNT(t.id) as TotalTransaccions
FROM
rtv_turnover_transaction as t
INNER JOIN tills as till ON till.ID=t.till_id
INNER JOIN rtv_trans_articles as ta ON t.transaction_id=ta.transaction_id
INNER JOIN articles as art ON art.id=ta.article_id
INNER JOIN groups ON groups.id=art.group_a_id
INNER JOIN Clients as s ON s.id=t.cliente_id
INNER JOIN rtv_transactions as tr ON tr.id=t.transaction_id
INNER JOIN Ubicacion as u ON t.ubicacio_id=u.id
INNER JOIN Operadores as o ON t.operador_id=o.ID
where
tr.card_num IS NULL
and t.trans_date >= '2018-08-01' and t.trans_date >= '2018-09-01'
希望你能帮助我。我是数据库新手。
【问题讨论】:
-
你有什么索引(
CLUSTERED和NONCLUSTERED)?请也包括他们的 DDL。 -
你能上传一个实际的执行计划到这个网站吗? brentozar.com/pastetheplan
-
将您的查询计划的输出提供给我们会有所帮助:stackoverflow.com/questions/7359702/…
-
您可能需要检查您的 WHERE 子句:
and t.trans_date >= '2018-08-01' and t.trans_date >= '2018-09-01' -
为什么需要所有这些连接?摆脱那些没有用处的东西。
标签: sql-server select sum