创建表,填充测试数据

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空间类型使用笔记的更多相关文章

  1. MySQL数字类型学习笔记

    数字类型 最近在看<MySQL技术内幕:SQL编程>并做了笔记,所以本博客是一篇笔记类型博客,分享出来方便自己复习,也可以帮助他人 整型 类型 占用空间 最小值(SIGNED) 最大值(S ...

  2. MySQL字符类型学习笔记

    目录 一.字符集和字符编码 1.1.字符集 1.2.字符编码 二.字符集排序规则 2.1.排序规则定义 2.2 .排序规则特征 三.CHAR和VARCHAR 3.1.CHAR类型 3.2.VARCHA ...

  3. MySQL空间函数实现位置打卡

    项目需求是跟用户当前位置判断是否在给定的地理位置范围内,符合位置限制才可以打卡,其中的位置范围是一个或多个不规则的多边形.如下图,判断用户是在清华还是北大. 图形获取区域坐标 因为项目前端使用微信小程 ...

  4. MySQL索引类型总结和使用技巧以及注意事项

    索引是快速搜索的关键.MySQL索引的建立对于MySQL的高效运行是很重要的.下面介绍几种常见的MySQL索引类型 在数据库表中,对字段建立索引可以大大提高查询速度.假如我们创建了一个 mytable ...

  5. MySQL表类型

    学习Mysql数据库,Mysql表类型都有哪些是一定需要知道的,下面就为您介绍七种Mysql表类型,希望能对您学习Mysql表类型有所帮助. MySQL作为当前最为流行的免费数据库服务引擎,已经风靡了 ...

  6. MYSQL视图的学习笔记

    MYSQL视图的学习笔记,学至Tarena金牌讲师,金色晨曦科技公司技术总监沙利穆 课程笔记的综合. 视图及图形化工具   1.       视图的定义 视图就是从一个或多个表中,导出来的表,是一个虚 ...

  7. mysql进阶(二十六)MySQL 索引类型(初学者必看)

    mysql进阶(二十六)MySQL 索引类型(初学者必看)   索引是快速搜索的关键.MySQL 索引的建立对于 MySQL 的高效运行是很重要的.下面介绍几种常见的 MySQL 索引类型.   在数 ...

  8. mysql索引类型 normal, unique, full text

    问题1:mysql索引类型normal,unique,full text的区别是什么? normal:表示普通索引 unique:表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用 ...

  9. mysql索引总结(1)-mysql 索引类型以及创建

    mysql索引总结(1)-mysql 索引类型以及创建 mysql索引总结(2)-MySQL聚簇索引和非聚簇索引 mysql索引总结(3)-MySQL聚簇索引和非聚簇索引 mysql索引总结(4)-M ...

随机推荐

  1. MySQL Lock--并发插入导致的死锁

    ============================================================================ 测试脚本: 表结构: CREATE TABLE ...

  2. YUM安装调试以及命令具体解释

    背景,须要安装cacti,google了非常多安装资料.须要先yum安装一些准备lib包,比方snmp以及openssl等等. [root@mysqlvm2 ~]# yum install net-s ...

  3. tomcat源码阅读之默认连接器

    默认连接器 一.UML图: 1.所有的连接器都要实现Connector接口,必须创建Request对象和Response对象,httpConnector作为默认连接器,肯定也是要实现Connector ...

  4. focus、input、keydown、keyup、change、blur方法的差异

    focus.input.keydown.keyup.change.blur方法的差异: https://blog.csdn.net/yiifaa/article/details/52372022 bl ...

  5. jmeter --- 搭建持续集成接口测试平台(Jenkins+Ant+Jmeter)

    jmeter --- 搭建持续集成接口测试平台(Jenkins+Ant+Jmeter) 一.环境准备: 1.JDK:http://www.oracle.com/technetwork/java/jav ...

  6. skype在线状态代码详解

    前不久微软宣布了MSN并入skype的消息,这么一来面向海外客户的同学除了选择客服系统之外,在页面上添加一个skype聊天按钮也是很不错的噢,它添加方便.功能强大.而且可以判断出客户是否安装了skyp ...

  7. MySQL的瑞士军刀

    这里主要讲mysql运维中的一些主要工具,这些工具可能大家都用过,特别是系统管理员或者做linux服务器维护的同学可能都知道这些小工具,这里讲得会比较多一些,除了系统监控的小工具,还包括一些mysql ...

  8. DOM confirm setTimeout url刷新

    console.log 输出框 alert 弹出框 confirm 确认框 // URL和刷新 location.href 获取URL location.href = "url" ...

  9. 在VMware中安装Mac OS

    macOS与Darwin http://blog.csdn.net/hintcnuie/article/details/38468093 OS X 是整个操作系统的一个集体名称.而Darwin 就是其 ...

  10. 黄聪:FFmpeg 使用指南

    1. ffmpeg 是什么? ffmpeg(命令行工具) 是一个快速的音视频转换工具. 2. ffmpeg 的使用方式 命令行: ffmpeg [全局选项] {[输入文件选项] -i ‘输入文件’} ...