我刚刚将我的SQL Server 2008数据库从使用纬度/经度对转换为使用新的地理类型。我使用STDistance函数对距离地理位置30英里的企业运行查询::如下所示:
WHERE this_.GeoLocation.STDistance(geography::Point(42.738963, -84.5522, 4326)) <= 48280.32
以下是我在地理列上的索引:
CREATE SPATIAL INDEX IDX_Business_GeoLocation
ON Business (GeoLocation)
USING GEOGRAPHY_GRID
WITH (
GRIDS = (
LEVEL_1 = LOW,
LEVEL_2 = LOW,
LEVEL_3 = LOW,
LEVEL_4 = LOW),
CELLS_PER_OBJECT = 64
)
我真的不明白网格级别或每个对象的单元格是什么意思,但我正在寻找的是我的场景的最佳设置,我正在搜索距离点30英里范围内的商家(纬度/经度)。
任何提示?
答案 0 :(得分:2)