当前位置:   article > 正文

PostgreSQL使用PostGIS插件,存储GIS数据_postgresql postgis

postgresql postgis

PostGISPostgreSQL对象关系数据库的空间数据库扩展程序。它增加了对地理对象的支持,允许在SQL中运行位置查询。

[About PostGIS](About PostGIS | PostGIS)

基本使用如下:

  1. 启用postgis插件
-- 启用postgis插件
CREATE EXTENSION postgis;
  • 1
  • 2
  1. 建表,指定geom列
-- 建表,指定geom列
CREATE TABLE mytable (
  id SERIAL PRIMARY KEY,
  geom GEOMETRY(Point, 26910),
  name VARCHAR(128)
);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  1. 添加空间索引
-- 添加空间索引
CREATE INDEX mytable_gix
  ON mytable
  USING GIST (geom);
  • 1
  • 2
  • 3
  • 4
  1. 新增一条点数据
-- 新增一条点数据
INSERT INTO mytable (geom) VALUES (
  ST_GeomFromText('POINT(0 0)', 26910)
);
  • 1
  • 2
  • 3
  • 4
  1. 查询
-- 查询附近点
SELECT id, name
FROM mytable
WHERE ST_DWithin(
  geom,
  ST_GeomFromText('POINT(0 0)', 26910),
  1000
);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
-- 查询数据
SELECT * FROM mytable
-- 转为json对象字串
SELECT ST_AsGeoJSON(geom) FROM mytable
  • 1
  • 2
  • 3
  • 4

具体详细用法,可参考教程和Api文档:

小结:

  1. 除了手动建表插入数据,也可以直接从shp等gis图层,直接向数据库导入数据,copy数据。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/589789
推荐阅读
相关标签
  

闽ICP备14008679号