加入日期字段时的性能改进

时间:2018-05-03 20:02:47

标签: sql sql-server-2012

我正在尝试在查找日历表上加入大表。我必须比较日期并得到结果。我的代码如下所示

select distinct MemberID,AuthID,Carrier,ServiceStatus
,COALESCE([DischargeDate],'1900-01-01'),Provider#,ProviderName
,CAST(dateadd(day,-1,c.pkdate) AS date) as DailyDate
from Table1 a
inner join [dbo].[Calendardays] c
on cast([servicedate] as date) <= CAST(dateadd(day,-1,c.pkdate) AS date)
  AND CAST([serviceenddate] AS date) >= CAST(dateadd(day,-1,c.pkdate) AS date)

我已经在服务日期和服务结束日期创建了索引。即便如此,由于逐行检查,性能确实很慢。

是否有更好的方法来进行此类连接,结果更快?

0 个答案:

没有答案
相关问题