1

我正在使用以下 where 谓词从我们的一张 DW 表中仅获取周一至周五的门票。

SET DATEFIRST 1

SELECT TicketID 
FROM Tickets AS T
WHERE DATEPART(DW,T.StartDate) BETWEEN 1 AND 5 ....`

请问是否可以让我知道DATEPART谓词是否可调用?

我查看了实际的执行计划,即使使用该DATEPART函数,它也使用索引搜索。

我们已经通过修改 where 谓词、分析计划、设置统计信息等优化了许多旧查询。对于这一点,我不确定是否有更好的方法来仅从 mon - fri (shifts. .)?

4

1 回答 1

2

由于您的 BETWEEN 子句,您的查询问题可能是索引选择性。如果您选择 7 个工作日中的 5 个,优化器将执行表扫描。

于 2014-07-22T20:04:34.490 回答