1

NZTM2000形式のNorthingとEastingの2つの列があります。これらの2つの列から、geometry :: Point(Easting、Northing、0)を使用してGeometry列を計算します。次のステップでは、ジオメトリ列に空間インデックスを作成するための境界ボックスを作成します。空間インデックスの作成中に、SQL Server 2008 R2は、バインドされたボックス、つまりX最小、Y最小、X最大、Y最大を要求しています。

では、ジオメトリ列に空間インデックスを作成するためにバウンディングボックスを計算する必要があります。min(Northing)= X Min、min(Easting)、max(Northing)、Max(Easting)を見つけることができますか?空間インデックスのバウンディングボックスを作成するために正しい計算を行っている場合、誰かが私を助けることができますか?

インデックスを作成する理由は、STContains()を使用して、ポイントがその領域のどこに存在するかを確認するためです。

乾杯、

4

2 に答える 2

1

これは、インデックスですべてのデータをカバーするか、その一部だけをカバーするかによって異なります。完全にカバーするには、次を使用します
。XMIN:-180
YMIN:-90
XMAX:180
YMAX:90

参考:SQLサーバーでSpatialを始めるAlastair Aitchison著
(この本を強くお勧めします)

于 2012-11-26T14:00:25.333 に答える
1

EastingsとNorthingsは使用していませんが、同じ論理が当てはまると思います。

次のコードを使用して、ジオメトリから郵便番号の境界ボックスを作成します。

UPDATE BBox.dbo.ZIPs
SET bbox = geom.STEnvelope()

また、トーマスが言及した本を入手することを強くお勧めします。

于 2012-12-12T04:02:57.283 に答える