什么是我的C#方法的Equal SQL Function或StoredProcedure

时间:2016-09-14 07:26:03

标签: sql-server tsql stored-procedures sql-function

我有这个C#方法确定一个点是否在多边形内

C#方法就是这样:

styleUrls

如何将其转换为SQL函数或StoredProcedure?

1 个答案:

答案 0 :(得分:2)

如果您将所有多边形存储在SQL Server数据库中作为空间geometry数据类型,则可以使用SQL Server 2008R2 +中可用的空间函数,其中有很多(Google是您的朋友):< / p>

declare @g geometry
set @g = geometry::STGeomFromText('POLYGON((-33.229869 -70.891988
                                           ,-33.251124 -70.476616
                                           ,-33.703094 -70.508045
                                           ,-33.693931 -70.891052
                                           ,-33.229869 -70.891988
                                           ))'
                                 ,0)

DECLARE @h geometry;

SET @h = geometry::STGeomFromText('POINT(-33.3906300 -70.5725020)', 0);
SELECT @g.STContains(@h);