st_makeenvelope-Funktion

Gilt für:check marked yes Databricks SQL check marked yes Databricks Runtime 18.2 and above

Note

Dieses Feature ist in Databricks SQL Classic Warehouses nicht verfügbar. Weitere Informationen zu Databricks SQL Warehouses finden Sie unter SQL Warehouse-Typen.

Gibt einen GEOMETRY Wert zurück, der den 2D-Achsenausrichtungsumschlag (Minimale Begrenzungsfeld) darstellt, der durch die beiden Eckkoordinaten (x1, y1) und .(x2, y2)

Syntax

st_makeenvelope ( x1, y1, x2, y2 )

Arguments

  • x1: Ein DOUBLE Wert, der die X-Koordinate der ersten Ecke darstellt.
  • y1: Ein DOUBLE Wert, der die Y-Koordinate der ersten Ecke darstellt.
  • x2: Ein DOUBLE Wert, der die X-Koordinate der zweiten Ecke darstellt.
  • y2: Ein DOUBLE Wert, der die Y-Koordinate der zweiten Ecke darstellt.

Rückkehr

Ein Wert vom Typ GEOMETRY, der den 2D-Achsenausrichtungsumschlag der beiden Eingabeecke darstellt. Die SRID der zurückgegebenen Geometrie ist 0.

Die Eingabeecke können in beliebiger Reihenfolge bereitgestellt werden; Der resultierende Umschlag entspricht dem, wenn die Ecken normalisiert (xmin, ymin) wurden und (xmax, ymax).

Der Typ der zurückgegebenen Geometrie hängt von den Eingabeecke ab:

  • Wenn das Feld zu einem einzelnen Punkt (x1 = x2 und y1 = y2), ist das Ergebnis ein Punkt.
  • Wenn das Feld zu einem Segment (x1 = x2 oder y1 = y2, aber nicht beide) abweicht, ist das Ergebnis eine Linienzeichenfolge mit zwei Punkten.
  • Andernfalls ist das Ergebnis ein Polygon mit fünf Scheitelpunkten (geschlossener Ring).

Die Funktion gibt zurück NULL , wenn eine der Eingaben lautet NULL.

Beispiele

-- 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