MySQL数据库之mysql空间类型使用笔记
小标 2018-09-12 来源 : 阅读 1854 评论 0

摘要:本文主要向大家介绍了MySQL数据库之mysql空间类型使用笔记 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。

本文主要向大家介绍了MySQL数据库之mysql空间类型使用笔记 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。

创建表,填充测试数据

create table geom1(id int not null auto_increment primary key,geo geometry);

insert into geom1(geo)values(ST_GeomFromText(‘point(1 1 )‘,3857));

insert into geom1(geo)values(ST_GeomFromText(‘polygon((0 0,10 0,10 10,0 10,0 0))‘,3857));
 

select AsText(geo) from geom1;/*以WKT格式获取空间数据*/

select AsBinary(geo) from geom1; /*以WKB格式获取空间数据*/
 修改列为自增类型

alter table cc change id id int primary key auto_increment;
 建立空间索引,索引列必须为非空

alter table geom1
change geo geo geometry not null;
create SPATIAL  index idx_geo on geom1(geo)
 常用空间计算操作

MBRContains(g1,g2) 

返回1或0以指明g1的最小边界矩形是否包含g2的最小边界矩形。


MBRDisjoint(g1,g2) 

返回1或0以指明两个几何变量g1和g2的最小边界矩形是否不相交。

MBREqual(g1,g2) 

返回1或0以指明两个几何变量g1和g2的最小边界矩形是否相同。

MBRIntersects(g1,g2) 

返回1或0以指明两个几何变量g1和g2的最小边界矩形是否相交。

MBROverlaps(g1,g2) 

返回1或0以指明两个几何变量g1和g2的最小边界矩形是否交迭。

MBRTouches(g1,g2) 

返回1或0以指明两个几何变量g1和g2的最小边界矩形是否接触。

MBRWithin(g1,g2) 

返回1或0以指明g1的最小边界矩形是否位于g2的最小边界矩形内。



Contains(g1,g2) 

返回1或0以指明g1是否完全包含g2。

Crosses(g1,g2) 

如果g1在空间上与g2相交,返回1。如果g1为Polygon或MultiPolygon,返回NULL,或如果g2为Point或MultiPoint返回NULL。否则,返回0。

术语“空间上交叉”指的是2个给定几何对象之间的空间关系,它具有下述属性:

o        2个结合对象交叉。

o        其交叉结果将导致其维数小于两个给定几何对象最大维数的几何对象。

o        其交叉不等于两个几何对象中的任何1个。

Disjoint(g1,g2) 

返回1或0以指明g1是否与g2从空间上不相交。

Distance(g1,g2) 

以双精度数值形式返回2个几何对象中2点间的最短距离。

Equals(g1,g2) 

返回1或0以指明g1是否从空间上等同于g2。

Intersects(g1,g2) 

返回1或0以指明g1是否从空间上与g2相交。

Overlaps(g1,g2) 

返回1或0以指明g1是否从空间上与g2交迭。如果2个几何对象交叉而且其交叉将导致具有相同维数但并不等同于任一几何对象的几何对象,将使用术语“空间交迭”。

Related(g1,g2,pattern_matrix) 

返回1或0以指明由pattern_matrix指定的空间关系是否在g1和g2间存在。如果参量为NULL返回-1。模式矩形为字符串。如果实施了该函数,其规范将在此给出。

Touches(g1,g2) 

返回1或0以指明g1是否从空间上与g2接触。如果几何对象的内部不交叉,但1个几何对象的边界与另一个的边界或内部交叉,这两个几何对象是从空间上接触的。

Within(g1,g2) 

返回1或0以指明g1是否从空间上位于g2内。    

本文由职坐标整理并发布,希望对同学们学习MySQL有所帮助,更多内容请关注职坐标数据库MySQL数据库频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved