Sql 如何使用PostGIS创建和查询包含lat/long的表?

Sql 如何使用PostGIS创建和查询包含lat/long的表?,sql,postgresql,gis,postgis,Sql,Postgresql,Gis,Postgis,如何使用PostGIS创建包含地理点(纬度/长度)的表?那么,插入到这个表中的格式是什么(使用SQL/PostgreSQL) 创建表时是否只需要执行以下操作: 创建表x(地理地理位置(点4326)) 如果是这样,什么是点以及何时使用ST_点(X,Y) 这个列应该有索引吗 注意:前面回答的许多问题都详细说明了如何转换。但是我想从头开始创建一个支持存储纬度和经度的空表。是的,使用地理信息创建表的语法非常简单,如createtablex(Geography(POINT,4326)) 在此命令中,点是此

如何使用PostGIS创建包含地理点(纬度/长度)的表?那么,插入到这个表中的格式是什么(使用SQL/PostgreSQL)

创建表时是否只需要执行以下操作:

创建表x(地理地理位置(点4326))

如果是这样,什么是
以及何时使用
ST_点(X,Y)

这个列应该有索引吗


注意:前面回答的许多问题都详细说明了如何转换。但是我想从头开始创建一个支持存储纬度和经度的空表。

是的,使用地理信息创建表的语法非常简单,如
createtablex(Geography(POINT,4326))

在此命令中,
是此表将存储的形状类型。其他可能性包括:

  • 线绳
  • 多边形
  • 多点
  • 多重限制
  • 多边形
  • 几何收集
在某些情况下,将地理信息存储在表格中是有意义的,因为它使您能够运行,这将为您提供结果,就像您在球形地球上计算一样。例如,我可以将两个点存储为地理位置(只知道每个点的长度),我可以很容易地找到它们之间的距离(以米为单位)

ST_Point(X,Y)
只是一个函数,它接受两个数字,然后创建一个点,其中X为第一个数字,Y为第二个数字。它不必是一对拉特长的。事实上,这一点并没有它所在的坐标系的概念

创建表后,在其中插入记录非常简单:
插入X(地理位置)值(ST_GeographyFromText('POINT(2.5559 49.0083))

这里您正在为巴黎创建一个地理点,纬度为49.0083N,经度为2.5559 E