我怎样才能做到在SQL 2008年这个空间查询?
-
20-08-2019 - |
题
我试图在SQL做空间查询2008 - >对的POI(兴趣点,经度/纬度GEOGRAPHY
数据),其邮政编码做他们(MULTIPOLYGON GEOGRAPHY
数据)存在的一个给定的名单
这就是我试图查询,但它的语法不正确: -
SELECT PostCodeId, ShapeFile
FROM Postcodes a
WHERE a.ShapeFile.STIntersects(
SELECT PointOfInterest
FROM PointOfInterests
WHERE PointOfInterestId IN (SELECT Item from dbo.fnSplit(@PoiIdList, ','))
因此,这意味着我通过在的设施ID的一个 CSV列表,并将它们分割 。这不是一个问题..这是我在STIntersects
子查询。这是无效的。
所以..任何建议人
解决方案
如何:
SELECT a.PostCodeId, a.ShapeFile
FROM (SELECT Item from dbo.fnSplit(@PoiIdList, ',')) AS POI_IDs
INNER JOIN PointOfInterests
ON PointOfInterests.PointOfInterestId = POI_IDs.Item
INNER JOIN Postcodes a
ON a.ShapeFile.STIntersects(PointOfInterests.PointOfInterest) = 1
不隶属于 StackOverflow