【发布时间】:2013-10-22 07:06:01
【问题描述】:
我想从一个表中选择百万条记录,我正在使用select 查询。
目前获取数据需要几分钟时间。能快点拿到吗?
我使用的是 SQL Server 2008 R2。
我的查询:
SELECT
sum(Orders.BusinessVolumeTotal) as BusinessVolume,
sum(Orders.CommissionableVolumeTotal) as CommissionableVolume,
OrderTypes.OrderTypeDescription,
Orders.OrderTypeID
FROM
Orders
INNER JOIN
OrderTypes ON Orders.OrderTypeID = OrderTypes.OrderTypeID
WHERE
Orders.OrderDate > convert(DATETIME, '{0}')
and Orders.OrderDate < convert(DATETIME, '{1}')
GROUP BY
Orders.OrderTypeID, OrderTypes.OrderTypeDescription
【问题讨论】:
-
这在很大程度上取决于 (a) 你的表是什么样的,(b) 你有什么样的索引,(c) 你的查询是什么样的,以及 (d) 你的硬件是什么样的(服务器)支持......这个问题太宽泛无法回答......
-
谢谢@marc_s,我已经编辑了我的问题。
-
这仍然没有回答表和索引结构.....
-
我没有使用索引,表有 29 列。
-
见:technet.microsoft.com/en-us/library/…。在 SQL Server Mgmt Studio 中执行查询之前,请转到
Query > Include Actual Execution Plan,您将获得查询执行方式的图形视图 - 这对于查看性能问题非常有帮助
标签: sql-server sql-server-2008-r2