#!/bin/bash
sql=/tmp/test-postgis-point.sql lat=22.39 lon=114.23 srid=4236
cat >$sql <<END \timing on SELECT ST_Point($lon,$lat); SELECT ST_MakePoint($lon,$lat); \timing off
SELECT ST_SetSRID(ST_MakePoint($lon,$lat),$srid);
SELECT ST_GeomFromText('POINT($lon $lat)',$srid); SELECT ST_GeometryFromText('POINT($lon $lat)',$srid); SELECT ST_PointFromText('POINT($lon $lat)',$srid);
SELECT ST_GeomFromGML(' <gml:Point srsName="EPSG:$srid"> <gml:coordinates>$lon,$lat</gml:coordinates> </gml:Point> '); SELECT ST_GeomFromGML(' <gml:Point> <gml:coordinates>$lon,$lat</gml:coordinates> </gml:Point> ', $srid); SELECT ST_GMLToSQL(' <gml:Point> <gml:coordinates>$lon,$lat</gml:coordinates> </gml:Point> ', $srid);
-- Need to compile postgis ./configure --with-jsonc=/usr/include -- SELECT ST_GeomFromGeoJSON(' -- { -- "type":"Point", -- "coordinates":[$lon,$lat] -- } --');
SELECT ST_SetSRID(ST_GeomfromKML(' <Point> <coordinates>$lon,$lat</coordinates> </Point> '),$srid);
SELECT GeometryType(ST_GeomFromText('POINT($lon $lat)',$srid)); SELECT ST_GeometryType(ST_GeomFromText('POINT($lon $lat)',$srid));
SELECT ST_X(ST_GeomFromText('POINT($lon $lat)',$srid)); SELECT ST_Y(ST_GeomFromText('POINT($lon $lat)',$srid)); SELECT ST_AsText(ST_GeomFromText('POINT($lon $lat)',$srid));
SELECT ST_AsText(ST_Transform(ST_GeomFromText('POINT($lon $lat)',$srid),2326));
SELECT ST_AsGML(ST_GeomFromText('POINT($lon $lat)',$srid)); SELECT ST_AsKML(ST_GeomFromText('POINT($lon $lat)',$srid)); SELECT ST_AsGeoJSON(ST_GeomFromText('POINT($lon $lat)',$srid)); SELECT ST_CoordDIM(ST_GeomFromText('POINT($lon $lat)',$srid));
END
psql -f $sql
rm $sql |
Timing is on. st_point -------------------------------------------- 01010000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
Time: 9.080 ms st_makepoint -------------------------------------------- 01010000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
Time: 1.050 ms Timing is off. st_setsrid ---------------------------------------------------- 01010000208C1000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
st_geomfromtext ---------------------------------------------------- 01010000208C1000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
st_geometryfromtext ---------------------------------------------------- 01010000208C1000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
st_pointfromtext ---------------------------------------------------- 01010000208C1000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
st_geomfromgml ---------------------------------------------------- 01010000208C1000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
st_geomfromgml ---------------------------------------------------- 01010000208C1000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
st_gmltosql ---------------------------------------------------- 01010000208C1000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
st_setsrid ---------------------------------------------------- 01010000208C1000001F85EB51B88E5C40A4703D0AD7633640 (1 row)
geometrytype -------------- POINT (1 row)
st_geometrytype ----------------- ST_Point (1 row)
st_x -------- 114.23 (1 row)
st_y ------- 22.39 (1 row)
st_astext --------------------- POINT(114.23 22.39) (1 row)
st_astext ------------------------------------------ POINT(842544.999921874 827702.359496913) (1 row)
st_asgml ---------------------------------------------------------------------------------------------------------------------- <gml:Point srsName="EPSG:4236"><gml:coordinates>114.230000000000004,22.390000000000001</gml:coordinates></gml:Point> (1 row)
st_askml --------------------------------------------------------------------------------- <Point><coordinates>114.237828832055698,22.38854783127632</coordinates></Point> (1 row)
st_asgeojson ----------------------------------------------- {"type":"Point","coordinates":[114.23,22.39]} (1 row)
st_coorddim ------------- 2 (1 row) |