有一个like查询,显示比较慢:Select Count(1)
from Tabel1 T left join Table2 T2 on T.bid=T2.id
WHERE T1.IsChecked=1 and T1.Description like '%小明%' and T2.openstate<>3
查询时间在2秒
创建全文索引,使用contains代替like。
Select Count(1)
from Tabel1 T left join Table2 T2 on T.bid=T2.id
WHERE T1.IsChecked=1 and CONTAINS(T1.Description,'小明') and T2.openstate<>3
查询时间变为300毫秒。
查看查询计划,83%的开销在索引扫描上。
本文探讨了如何通过创建全文索引并使用`CONTAINS`替代`LIKE`来优化慢速的SQL查询,显著减少了查询时间。通过分析查询计划,发现大部分开销来自索引扫描。
4351

被折叠的 条评论
为什么被折叠?



