postgresql中geom处理

geom转换为经纬度

SELECT
    st_x ( geom ) AS lon,
    st_y ( geom ) AS lat
FROM
    表名

如果是几何图形会报错

> ERROR:  Argument to ST_X() must have type POINT

这时我们可以改为获取几何图形的中心点的经纬度

SELECT
	st_x ( ST_PointOnSurface(geom) ) AS lon,
	st_y ( ST_PointOnSurface(geom) ) AS lat
FROM
	表名; 

获取几何图形的中心点

SELECT ST_PointOnSurface(geom) FROM 表名 ;

geom转换为POINT

SELECT
    ST_asText ( geom ) 
FROM
    表名

 SRID查询

SELECT st_srid(geom) FROM 表名;

 SRID转换,如4549转4326

SELECT st_astext(
st_transform(
ST_GeomFromText('POINT(521519.84150795196  3070180.2299377914)', 4549 ), 4326) )

几何类型坐标系转换

SELECT  st_transform(geom,4549) FROM 表名 LIMIT 9;

判断两个几何类型是否相交

SELECT ST_Intersects(geom1, geom2);  

猜你喜欢

转载自blog.csdn.net/weixin_65243968/article/details/130530248