PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

converter o formato de geometria Postgres para WKT


Você já tentou isso?
SELECT ST_AsText(your_geom_column) FROM your_table

Nos exemplos a seguir, mostrarei algumas maneiras de serializar suas geometrias - amostra de dados com dois pontos codificados como 4326 (WGS84):
CREATE TEMPORARY TABLE tmp (geom GEOMETRY);
INSERT INTO tmp VALUES ('SRID=4326;POINT (1 2)'),
                       ('SRID=4326;POINT (2 4)');

Geometrias como WKB (predefinição):
SELECT geom FROM tmp;
                        geom                        
----------------------------------------------------
 0101000020E6100000000000000000F03F0000000000000040
 0101000020E610000000000000000000400000000000001040

Geometrias como WKT e EWKT (EWKT =WKT com um Sistema de Referência Espacial explícito):
SELECT ST_AsText(geom),ST_AsEWKT(geom) FROM tmp;
 st_astext  |      st_asewkt       
------------+----------------------
 POINT(1 2) | SRID=4326;POINT(1 2)
 POINT(2 4) | SRID=4326;POINT(2 4)

Caso você goste de GeoJSON ..
SELECT ST_AsGeoJSON(geom) FROM tmp;
             st_asgeojson             
--------------------------------------
 {"type":"Point","coordinates":[1,2]}
 {"type":"Point","coordinates":[2,4]}

.. ou até mesmo GML
SELECT ST_AsGML(geom) FROM tmp;
                                     st_asgml                                      
-----------------------------------------------------------------------------------
 <gml:Point srsName="EPSG:4326"><gml:coordinates>1,2</gml:coordinates></gml:Point>
 <gml:Point srsName="EPSG:4326"><gml:coordinates>2,4</gml:coordinates></gml:Point>

.. os entusiastas do Google Earth também se divertem! Geometrias como KML
SELECT ST_AsKML(geom) FROM tmp;
                   st_askml                    
-----------------------------------------------
 <Point><coordinates>1,2</coordinates></Point>
 <Point><coordinates>2,4</coordinates></Point>

E a lista continua..! Na PostGIS documentation existem outras maneiras sofisticadas de serializar geometrias.

Demonstração:db<>fiddle