SQL Server一次显示两个不同的空间列

时间:2014-11-12 22:04:01

标签: sql-server-2008 geometry ssms spatial spatial-query

我有两个表,每个表都有一个几何列,一个用于不同的区域,另一个用于银行代理。我试图一次显示两个空间列,所以我可以看到每个银行机构在该区的位置。这是否可以使用几何类型?现在,我可以在空间结果选项卡中看到它们,但是作为两个不同的列,我试图重叠它们。

我正在使用SQL Server 2008 btw。

查询示例:

select a.Geometria, a.nombre, d.GeometriaD
from dbo.AgenciaBancaria a join dbo.Distrito d on a.idDistrito = d.ID
where d.Nombre = 'Carmen'

1 个答案:

答案 0 :(得分:2)

AFAIK,SQL Server Management Studio的空间结果标签随时只能显示一个空间列。

如果要重叠两列中的几何,可能必须在查询中创建它们的并集或交集,然后显示它;例如:

SELECT a.Geometria.STIntersection(d.GeometriaD) AS Intersection
FROM dbo.AgenciaBancaria a 
JOIN dbo.Distrito d ON a.idDistrito = d.ID
WHERE d.Nombre = 'Carmen'

-- The above query is just for demonstration purposes; it would possibly need some 
-- optimization to run faster, such as a fast intersection test in the WHERE clause.

或显示STIntersectionSTUnion的结果的图形示例:

Results of <code>STIntersection</code> and <code>STUnion</code>