混合搭配空间参考系统?

时间:2015-09-11 21:17:22

标签: sql-server sql-server-2012 geospatial

假设我有一个邮政编码表,其中Geography列填充了Global - WGS84(SRID 4326),我可以准确地将它们(使用STDistance)与{{ 1}}已经填充了北美的点 - NAD83(SRID 4269)?

1 个答案:

答案 0 :(得分:1)

简而言之,没有。

SQL Server要求所有项目的空间功能'具有相同的SRID。这是因为SRID在背景中提供了用于计算距离的其他信息,例如椭球模型。

也就是说,您可以使用第二列计算具有公共SRID并将其用于距离计算。它很简单:

Declare @commonSrid geography = geography::STGeomFromWKB(<existing column>.STAsBinary(), 4326);

在执行此操作时,您必须确保所有SRID都基于纬度和经度小数点坐标,而不是例如网格参考。另外,由于您没有在它们之间进行适当的转换,您可能会发现距离不是100%准确 - 但它们会非常接近。