関心のあるエンティティに関連付けられた一連のジオメトリを返すクエリがあります。このクエリは、Google マップに表示する KML を構築するために使用されます。
私が取得した列はタイプGEOMETRY
であり、私のデータセット内では、GeometryCollection
タイプの要素が 1 つだけの aがほとんど含まれていPolygon
ます。他のレコードはMultiPolygon
タイプです。
AVG
オペレーターの動作と同じように、結果セット内のすべてのジオメトリの重心を計算したいと思います。SELECT GEOMETRY FROM GEOENTITIES WHERE [..]
つまり、MySQL で結果セット内のすべての行のジオメトリの結合を計算し、それらの重心を計算するようなクエリが与えられた場合です。
例として、イタリアの都市を取り上げてみましょう。結果セットにローマのポリゴンとミラノのポリゴンのみが含まれている場合、両方の重心はフィレンツェ周辺にあると予想されます。
実際には、このUNION()
関数は行レベルではなく、列ベースのレベルで機能します。同じ行内の 2 つの列から 2 つのジオメトリを結合できます (ドキュメントに従って)
すべての行のポリゴンをコレクションに統合するには、集計演算子が必要です。コレクションから、重心を計算することが期待できます。
これは可能ですか?