ST_Perimeter - Amazon Redshift

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

ST_Perimeter

Per una geometria areale di input, ST_Perimeter restituisce il perimetro cartesiano (lunghezza del confine) della proiezione 2D. Le unità perimetrali sono le stesse delle unità in cui vengono espresse le coordinate della geometria di input. La funzione restituisce zero (0) per punti, multipunti e geometrie lineari. Quando l'input è una raccolta di geometrie, la funzione restituisce la somma dei perimetri delle geometrie nella raccolta.

Per una geografia di input, ST_Perimeter restituisce il perimetro geodetico (lunghezza del limite) della proiezione 2D di una geografia areale di input calcolata sullo sferoide determinato dallo SRID. L'unità del perimetro è espressa in metri. La funzione restituisce zero (0) per punti, multipunti e geografie lineari. Quando l'input è una raccolta di geometrie, la funzione restituisce la somma dei perimetri delle geografie nella raccolta.

Sintassi

ST_Perimeter(geo)

Argomenti

geo

Un valore di tipo GEOMETRY o GEOGRAPHY o un'espressione che restituisce un valore di tipo GEOMETRY o GEOGRAPHY.

Tipo restituito

DOUBLE PRECISION

Se geo è nullo, allora viene restituito il valore nullo.

Se il valore SRID non viene trovato, allora viene restituito un errore.

Esempi

Il seguente codice SQL restituisce il perimetro cartesiano di un multipoligono.

SELECT ST_Perimeter(ST_GeomFromText('MULTIPOLYGON(((0 0,10 0,0 10,0 0)),((10 0,20 0,20 10,10 0)))'));
st_perimeter -------------------------------- 68.2842712474619

Il seguente codice SQL restituisce il perimetro cartesiano di un multipoligono.

SELECT ST_Perimeter(ST_GeomFromText('MULTIPOLYGON(((0 0,10 0,0 10,0 0)),((10 0,20 0,20 10,10 0)))'));
st_perimeter -------------------------------- 68.2842712474619

Il seguente comando SQL restituisce il perimetro di un poligono in una geografia.

SELECT ST_Perimeter(ST_GeogFromText('SRID=4326;POLYGON((0 0,1 0,0 1,0 0))'));
st_perimeter ------------------ 378790.428393693

Il seguente SQL restituisce il perimetro di una linestring in una geografia.

SELECT ST_Perimeter(ST_GeogFromText('SRID=4326;LINESTRING(5 0,10 0)'));
st_perimeter -------------- 0