名前

ST_EstimatedExtent — 空間テーブルの推定範囲を返します。

概要

box2d ST_EstimatedExtent(text schema_name, text table_name, text geocolumn_name, boolean parent_only);

box2d ST_EstimatedExtent(text schema_name, text table_name, text geocolumn_name);

box2d ST_EstimatedExtent(text table_name, text geocolumn_name);

説明

空間テーブルの推定範囲をbox2dで返します。スキーマが指定されていない場合には現在のスキーマが使われます。推定範囲はジオメトリカラムの統計情報から取得します。これは通常は、ST_ExtentまたはST_3DExtentを使ってテーブルの確定範囲を計算するより、ずっと早く計算できます。

指定が無い場合には、子テーブル (INHERITSを使って作られたテーブル)が存在するなら、そこから得られた統計情報も使用します。parent_onlyがTRUEの場合には、パラメータで与えられたテーブルの統計情報だけが使用され、子テーブルの統計情報は無視されます。

PostgreSQL 8.0.0以上ではVACUUM ANALYZEで統計情報を集め、結果として得られる範囲は実際の95%程度です。PostgreSQL 8.0.0より前の場合には、update_geometry_stats()で統計情報が集められ、結果の範囲は確定値です。

[注記]

統計情報が無い (空のテーブルまたはANALYZEを実行していない)場合には、この関数はNULLを返します。1.5.4より前では、代わりに例外が投げられていました。

Availability: 1.0.0

Changed: 2.1.0 2.0.xまではST_Estimated_Extentと呼ばれていました。

このメソッドは曲線ストリングと曲線に対応しています。

SELECT ST_EstimatedExtent('ny', 'edges', 'geom');
--result--
BOX(-8877653 4912316,-8010225.5 5589284)

SELECT ST_EstimatedExtent('feature_poly', 'geom');
--result--
BOX(-124.659652709961 24.6830825805664,-67.7798080444336 49.0012092590332)
                

関連情報

ST_Extent, ST_3DExtent