我使用STDistance
和geometry
列来发现与特定点有一定距离的行。问题在于,当我使用空间索引时,查询性能会急剧下降(对于1kk行,它执行约10秒)。我的t-sql
查询:
declare @location geography;
set @location = xxx;
select count(*)
from MyTable
where GpsLocation.STDistance(@location) < 50000
我尝试使用不同的细分方案,网格系统,密度等重新创建索引。没有什么可以帮助....除非我删除索引时查询开始即时执行。所以我最终删除了空间索引,但我真的很困惑为什么要使用它们。
我错过了什么吗?