1

由于名为 STContains 的地理空间函数仅在 SQL Server 2012 中可用,我可以使用什么类似的函数在 SQL Sever 2008 中获得相同或相似的结果?

STIntersects 是可行的选择吗?

干杯!

4

1 回答 1

2

STContains 在SQL Server 2008 中可用。

DECLARE @s0 AS GEOMETRY = 'POLYGON((4 4, 7 4, 7 7, 4 7 ,4 4))'
DECLARE @s1 AS GEOMETRY = 'POLYGON((5 4.2, 6 4.2, 6 5, 5 5, 5 4.2))'

SELECT *
 FROM (
    SELECT @s0 AS 'Geo', 'S0' as 'Labels'
    UNION ALL   SELECT @s1, 'S1'
 ) AS A
 WHERE A.Geo.STContains(@S1) = 1

请参阅 SQL-Fiddle-Demo。

于 2013-01-15T20:10:07.193 回答