Name

ST_StartPoint — Returnerar den första punkten i en LineString.

Synopsis

geometry ST_StartPoint(geometry geomA);

Beskrivning

Returnerar den första punkten i en LINESTRING- eller CIRCULARLINESTRING-geometri som en POINT. Returnerar NULL om indata inte är en LINESTRING eller CIRCULARLINESTRING.

Denna metod implementerar SQL/MM-specifikationen. SQL-MM 3: 7.1.3

Denna funktion stöder 3d och kommer inte att tappa z-index.

Denna metod stöder cirkulära strängar och kurvor.

[Note]

Förbättrad: 3.2.0 returnerar en punkt för alla geometrier. Tidigare beteende returnerade NULL om indata inte var en LineString.

Ändrad: 2.0.0 fungerar inte längre med MultiLineStrings med en geometri. I äldre versioner av PostGIS skulle en MultiLineString med en enda rad fungera bra med den här funktionen och returnera startpunkten. I 2.0.0 returnerar den bara NULL som vilken annan MultiLineString som helst. Det gamla beteendet var en odokumenterad funktion, men personer som antog att de hade sina data lagrade som LINESTRING kan uppleva att dessa returnerar NULL i 2.0.0.

Exempel

Startpunkt för en LineString

SELECT ST_AsText(ST_StartPoint('LINESTRING(0 1, 0 2)'::geometry));
 st_astext
------------
 POINT(0 1)

Startpunkten för en icke-LineString är NULL

SELECT ST_StartPoint('POINT(0 1)'::geometry) IS NULL AS is_null;
  is_null
----------
 t

Startpunkt för en 3D-linjeString

SELECT ST_AsEWKT(ST_StartPoint('LINESTRING(0 1 1, 0 2 2)'::geometry));
 st_asewkt
------------
 POINT(0 1 1)

Startpunkt för en CircularString

SELECT ST_AsText(ST_StartPoint('CIRCULARSTRING(5 2,-3 1.999999, -2 1, -4 2, 6 3)'::geometry));
 st_astext
------------
 POINT(5 2)