mysql 地理_MySQL geometry地理位置数据存储和计算

本文介绍了MySQL中geometry数据类型及其相关类,包括Point、LineString、Polygon等,详细阐述了如何在MySQL中存储和计算地理位置数据,并通过WKT、WKB格式进行数据操作。此外,还讲解了如何创建支持空间几何对象的表,插入、获取数据,以及常用的空间函数和索引创建,最后提到了坐标系统和精度问题。
摘要由CSDN通过智能技术生成

最近学习了些MySQL geometry数据存储和计算,在这里记录下。

1. 环境

geometry推荐在5.6版本以上使用,尽管大部分功能在5.5已经可用,除了距离计算函数st_distance等新增函数。

2. Geometry主要相关类

2.1 Geometry

Geometry是所有此扩展中类型得基类,其他类型如Point,LineString,Polygon都是Geometry的子类。Geometry有一些属性,这些属性是所有其他几何类的共有属性:

type: 类型(Point, LineString,...)

SRID: 该值确定了用于描述定义几何对象的坐标空间的空间坐标系统,参考链接:https://www.cnblogs.com/Joetao/articles/2086846.html

coordinates: 坐标值

interior, boundary, exterior: interior是几何对象所展空间的部分,boundary是几何对象的边界,exterior是几何对象未占有的空间。

MBR: 能够覆盖几何对象的最小矩形,可以想象成信封,它由几何对象中最大最小的坐标值组合而成:

((MINX MINY, MAXX MINY, MAXX MAXY, MINX MAXY, MINX MINY))

simple/nonsimple: 几何对象是否简单

closed/not closed: 几何对象是否封闭

dimension: 维度数(Point: 0, LineString: 1, Polygon: 2)

2.2 Point

顾名思义就是点,有一个坐标值,没有长度、面积、边界。

2.3 LineString

顾名思义就是线,由一系列点连接而成。

如果线从头至尾没有交叉,那就是简单的(simple)

如果起点和终点重叠,那就是封闭的(closed)

2.4 Polygon

多边形。可以是一个实心平面形,即没有内部边界,也可以有空洞,类似纽扣。

2.5 MultiPoint, MultiLineString, MultiPolygon, GeometryCollection

这4种类型都是集合类,是多个Point、LineString或Polygon组合在一起而成。

3. 几何对象在MySQL中的数据格式

在MySQL中有3种表达几何对象的格式:

-->WKT(文本格式)

-->WKB(二进制格式)

-->MySQL内部存储格式

其中WKT格式简单易读,在这里着重介绍:

3.1 WKT

3.1.1 Point

POINT(121.213342 31.234532)

经度(longitude)在前,维度(latitude)在后,用空格分隔

3.1.2 LineString

LINESTRING(121.342423 31.542423,1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值