適用対象:
Databricks SQL
Databricks Runtime 18.2 以降" とマークされているチェック
注
この機能は、Databricks SQL クラシック ウェアハウスでは使用できません。 Databricks SQL ウェアハウスの詳細については、 SQL ウェアハウスの種類に関するページを参照してください。
GEOMETRYと(x1, y1)の 2 つの角座標によって定義された 2D 軸でアラインされたエンベロープ (最小境界ボックス) を表す(x2, y2)値を返します。
Syntax
st_makeenvelope ( x1, y1, x2, y2 )
論争
-
x1: 最初のコーナーの X 座標を表すDOUBLE値。 -
y1: 最初のコーナーの Y 座標を表すDOUBLE値。 -
x2: 2 番目のコーナーの X 座標を表すDOUBLE値。 -
y2: 2 番目のコーナーの Y 座標を表すDOUBLE値。
返品
GEOMETRY型の値。2 つの入力コーナーの 2D 軸アラインエンベロープを表します。 返されるジオメトリの SRID は 0 です。
入力コーナーは任意の順序で提供することができます。結果のエンベロープは、角が (xmin, ymin) および (xmax, ymax)に正規化された場合と同じです。
返されるジオメトリの種類は、入力コーナーによって異なります。
- ボックスが単一の点 (
x1 = x2およびy1 = y2) に縮退した場合、結果はポイントになります。 - ボックスがセグメント (
x1 = x2またはy1 = y2、両方ではなく) に縮退する場合、結果は 2 つの点を持つラインストリングになります。 - それ以外の場合、結果は 5 つの頂点 (閉じたリング) を持つ多角形になります。
いずれかの入力がNULLされている場合、関数はNULLを返します。
例示
-- Returns the polygon envelope defined by two corners.
> SELECT st_astext(st_makeenvelope(1.0, 2.0, 4.0, 6.0));
POLYGON((1 2,1 6,4 6,4 2,1 2))
-- Corners may be provided in any order.
> SELECT st_astext(st_makeenvelope(4.0, 6.0, 1.0, 2.0));
POLYGON((1 2,1 6,4 6,4 2,1 2))
-- Returns a point when the box degenerates to a point.
> SELECT st_astext(st_makeenvelope(3.0, 5.0, 3.0, 5.0));
POINT(3 5)
-- Returns a linestring when the box degenerates to a horizontal segment.
> SELECT st_astext(st_makeenvelope(1.0, 0.0, 4.0, 0.0));
LINESTRING(1 0,4 0)
-- Returns a linestring when the box degenerates to a vertical segment.
> SELECT st_astext(st_makeenvelope(0.0, 2.0, 0.0, 7.0));
LINESTRING(0 2,0 7)
-- The SRID of the returned geometry is always 0.
> SELECT st_srid(st_makeenvelope(0.0, 0.0, 10.0, 10.0));
0