1、MySQL地理空间数据类型
POINT,存储一个位置点数据
LINESTRING,存储一条线数据
POLYGON,存储一个多边形数据
MULTIPOINT,存储多个位置点数据
MULTILINESTRING,存储多条线数据
MULTIPOLYGON,存储多个多边形数据
GEOMETRY,可以存储任何POINT,LINESTRING,POLYGON 的数据
GEOMETRYCOLLECTION,可以存储任何空间数据类型的集合
创建一个带有空间数据类型的表:
CREATE TABLE geom (g GEOMETRY NOT NULL);
插入空间数据:
INSERT INTO geom VALUES (ST_GeomFromText(‘POINT(1 1)’));
查询空间数据:
SELECT ST_AsText(g) FROM geom;
查询时要加上ST_AsText()函数,将空间数据以WKT文本格式显示出来,如果不用ST_AsText()函数转换,那么查询出来的空间数据将是一串二进制符号,无法阅读。
2、MySQL支持的地理空间数据格式
地理空间数据通常以文本方式来描述,比如一个点可以描述为 POINT(15 20),再使用 ST_GeomFromText()函数将文本转成MySQL内部的地理空间数据,下面列出常用的地理空间数据表示方法。
POINT:
SELECT ST_GeomFromText(‘POINT(15 20)’);
LINESTR