SQL Server 2008 - 从记录中获取地理位置
Posted
技术标签:
【中文标题】SQL Server 2008 - 从记录中获取地理位置【英文标题】:SQL Server 2008 - Get Geography From Record 【发布时间】:2010-06-01 20:33:07 【问题描述】:我不熟悉在 SQL Server 2008 中使用地理类型。我的数据库中有一个名为“位置”的表。 “位置”具有以下列和类型:
Location
--------
City nvarchar(256)
State nvarchar(256)
PostalCode nvarchar(25)
Latitude decimal(9, 6)
Longitude decimal(9, 6)
每个位置都与我数据库中的一条商店记录相关。我正在尝试查找用户输入的 10 英里半径或邮政编码或城市/州内的商店。要做到这一点,我知道我需要依赖地理位置。此时我有:
DECLARE @startingPoint geography;
SET @startingPoint=geography::STGeomFromText('POINT(-122.34900 47.65100)', 4326);
这为我提供了硬编码文本值的起点。但是,我不知道如何将位置表中的纬度/经度转换为地理实例。
如何将数据库中的纬度/经度转换为地理实例,以便继续处理查询?
谢谢!
【问题讨论】:
【参考方案1】:select geography :: Point (Latitude, Longtitude, 4326)
from Location.Location
【讨论】:
以上是关于SQL Server 2008 - 从记录中获取地理位置的主要内容,如果未能解决你的问题,请参考以下文章
获取最后插入记录的 ID - Access DAO、ODBC、SQL Server 2008 身份字段
SQL Server 2008 R2:使用多个 CTE 获取日期明智的记录
SqlDataReader 使用 sql server 2008 不返回任何记录