如何使用PostGIS创建包含地理点(纬度/经度)的表格?那么,插入这个表的格式是什么(使用SQL / PostgreSQL)?
创建表格只会出现以下内容:
CREATE TABLE x (geog geography(point, 4326))
如果是,那么point
是什么?您何时会使用ST_Point(X,Y)
此列是否应该有索引?
注意:之前回答的许多问题详细说明了如何转换。但是我想从头开始创建一个支持存储纬度和经度的空表。
答案 0 :(得分:1)
是的,使用地理位置创建表格的语法就像CREATE TABLE x (geog geography(POINT,4326) );
在此命令中,POINT
是此表将存储的形状类型。其他可能性是:
在某些情况下,将地理位置存储在表格中的原因是,它使您能够运行several functions,这样可以为您提供结果,就像您在球形地球上计算一样。因此,例如,我可以将两个点存储为地理位置(仅知道每个点的长度),并且我可以在米中轻松找到它们之间的距离
ST_Point(X,Y)
只是一个接收两个数字的函数,然后创建一个点,其中X为第一个数字,Y为第二个数字。它不一定是Lat-long对。事实上,这个Point没有它所处的坐标参考系统的概念。
创建表后,在其中插入记录就像下面这样简单:
INSERT INTO X (geog) VALUES (ST_GeographyFromText('POINT(2.5559 49.0083)'));
此处您正在为巴黎创建地理位置,纬度为49.0083N,经度为2.5559 E