Funzioni operazione - Amazon Athena

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Funzioni operazione

Utilizzare le funzioni di operazione per eseguire operazioni su valori dei tipi di dati di geometria. Ad esempio, è possibile ottenere i limiti di un singolo tipo di dati di geometria; intersezioni tra due tipi di dati di geometria; differenza tra geometria a sinistra e a destra, dove ogni geometria è dello stesso tipo di dati; oppure un buffer esterno o anello intorno a un determinato tipo di dati di geometria.

geometry_union(array(geometry))

Restituisce una geometria che rappresenta l'unione degli insiemi di punti delle geometrie specificate. Esempio:

SELECT geometry_union(ARRAY[ST_Point(-158.54, 61.56), ST_Point(-158.55, 61.56)])

ST_Boundary(geometry)

Richiede come input uno dei tipi di dati di geometria e restituisce il tipo di dati di geometria boundary.

Esempi:

SELECT ST_Boundary(ST_Line('linestring(0 1, 1 0)')))
SELECT ST_Boundary(ST_Polygon('polygon((1 1, 1 4, 4 4, 4 1))'))

ST_Buffer(geometry, double)

Richiede come input uno dei tipi di dati di geometria, ad esempio punto, linea, poligono, multilinea o multipoligono e una distanza come tipo double). Restituisce il tipo di dati di geometria eseguiti in buffer dalla distanza specificata (o raggio). Esempio:

SELECT ST_Buffer(ST_Point(1, 2), 2.0)

Nell'esempio seguente le coordinate geografiche sono specificate in longitudine e latitudine e il valore .072284, che è la distanza buffer, è specificato in unità angolari come gradi decimali:

SELECT ST_Buffer(ST_Point(-74.006801, 40.705220), .072284)

ST_Difference(geometry, geometry)

Restituisce una rappresentazione della differenza tra geometria a sinistra e geometria a destra. Esempio:

SELECT ST_AsText(ST_Difference(ST_Polygon('polygon((0 0, 0 10, 10 10, 10 0))'), ST_Polygon('polygon((0 0, 0 5, 5 5, 5 0))')))

ST_Envelope(geometry)

Accetta tipi di dati di geometria line, polygon, multiline e multipolygon come input. Non supporta il tipo di dati di geometria point. Restituisce l'envelope come geometria, dove l'envelope è un rettangolo attorno al tipo di dati di geometria specificato. Esempi:

SELECT ST_Envelope(ST_Line('linestring(0 1, 1 0)'))
SELECT ST_Envelope(ST_Polygon('polygon((1 1, 1 4, 4 4, 4 1))'))

ST_EnvelopeAsPts(geometry)

Restituisce un array di due punti che rappresentano gli angoli inferiore sinistro e superiore destro del poligono rettangolare che delimita la geometria. Restituisce null se la geometria specificata è vuoto. Esempio:

SELECT ST_EnvelopeAsPts(ST_Point(-158.54, 61.56))

ST_ExteriorRing(geometry)

Restituisce la geometria dell'anello esterno del tipo di input polygon. A partire dalla versione 2 del motore Athena, i poligoni sono le uniche geometrie accettate come input. Esempi:

SELECT ST_ExteriorRing(ST_Polygon(1,1, 1,4, 4,1))
SELECT ST_ExteriorRing(ST_Polygon('polygon ((0 0, 8 0, 0 8, 0 0), (1 1, 1 5, 5 1, 1 1))'))

ST_Intersection(geometry, geometry)

Restituisce la geometria dell'intersezione della geometria a sinistra e a destra. Esempi:

SELECT ST_Intersection(ST_Point(1,1), ST_Point(1,1))
SELECT ST_Intersection(ST_Line('linestring(0 1, 1 0)'), ST_Polygon('polygon((1 1, 1 4, 4 4, 4 1))'))
SELECT ST_AsText(ST_Intersection(ST_Polygon('polygon((2 0, 2 3, 3 0))'), ST_Polygon('polygon((1 1, 4 1, 4 4, 1 4))')))

ST_SymDifference(geometry, geometry)

Restituisce la geometria della differenza geometricamente simmetrica tra la geometria a sinistra e quella a destra. Esempio:

SELECT ST_AsText(ST_SymDifference(ST_Line('linestring(0 2, 2 2)'), ST_Line('linestring(1 2, 3 2)')))

ST_Union(geometry, geometry)

Restituisce un tipo di dati della geometria che rappresenta l'unione di set di punti delle geometrie specificate. Esempio:

SELECT ST_Union(ST_Point(-158.54, 61.56),ST_LineString(array[ST_Point(1,2), ST_Point(3,4)]))