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数字类型学习笔记
数字类型 最近在看<MySQL技术内幕:SQL编程>并做了笔记,所以本博客是一篇笔记类型博客,分享出来方便自己复习,也可以帮助他人 整型 类型 占用空间 最小值(SIGNED) 最大值(S ...
- MySQL字符类型学习笔记
目录 一.字符集和字符编码 1.1.字符集 1.2.字符编码 二.字符集排序规则 2.1.排序规则定义 2.2 .排序规则特征 三.CHAR和VARCHAR 3.1.CHAR类型 3.2.VARCHA ...
- MySQL空间函数实现位置打卡
项目需求是跟用户当前位置判断是否在给定的地理位置范围内,符合位置限制才可以打卡,其中的位置范围是一个或多个不规则的多边形.如下图,判断用户是在清华还是北大. 图形获取区域坐标 因为项目前端使用微信小程 ...
- MySQL索引类型总结和使用技巧以及注意事项
索引是快速搜索的关键.MySQL索引的建立对于MySQL的高效运行是很重要的.下面介绍几种常见的MySQL索引类型 在数据库表中,对字段建立索引可以大大提高查询速度.假如我们创建了一个 mytable ...
- MySQL表类型
学习Mysql数据库,Mysql表类型都有哪些是一定需要知道的,下面就为您介绍七种Mysql表类型,希望能对您学习Mysql表类型有所帮助. MySQL作为当前最为流行的免费数据库服务引擎,已经风靡了 ...
- MYSQL视图的学习笔记
MYSQL视图的学习笔记,学至Tarena金牌讲师,金色晨曦科技公司技术总监沙利穆 课程笔记的综合. 视图及图形化工具 1. 视图的定义 视图就是从一个或多个表中,导出来的表,是一个虚 ...
- mysql进阶(二十六)MySQL 索引类型(初学者必看)
mysql进阶(二十六)MySQL 索引类型(初学者必看) 索引是快速搜索的关键.MySQL 索引的建立对于 MySQL 的高效运行是很重要的.下面介绍几种常见的 MySQL 索引类型. 在数 ...
- mysql索引类型 normal, unique, full text
问题1:mysql索引类型normal,unique,full text的区别是什么? normal:表示普通索引 unique:表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用 ...
- mysql索引总结(1)-mysql 索引类型以及创建
mysql索引总结(1)-mysql 索引类型以及创建 mysql索引总结(2)-MySQL聚簇索引和非聚簇索引 mysql索引总结(3)-MySQL聚簇索引和非聚簇索引 mysql索引总结(4)-M ...
随机推荐
- 02C++namespace命名空间
一.C++命名空间基本常识 所谓namespace,是指标识符的各种可见范围.C++标准程序库中的所有标识符都被定义于一个名为std的namespace中. 1.<iostream>和&l ...
- Unity3D协同函数与异步加载功能实战 学习
- python之路---06 小数据池 编码
二十二.小数据池, id() 进行缓存 1.小数据池针对的是: int, str, bool 2.在py文件中几乎所有的字符串都会缓存. 在cmd命令窗口中几乎都不会缓存 不同的解释器有 ...
- MongoDB索引的种类与使用
一:索引的种类 1:_id索引:是绝大多数集合默认建立的索引,对于每个插入的数据,MongoDB都会自动生成一条唯一的_id字段2:单键索引: 1.单键索引是最普通的索引 2.与_id索引不同,单键索 ...
- Netty 学习资料
Netty 学习资料 Netty 学习资料 链接网址 说明 Netty 4.x 用户指南 http://wiki.jikexueyuan.com/project/netty-4-user-guide/ ...
- React 使用 PropTypes 进行类型检查
注意: React.PropTypes 自 React v15.5 起已弃用.请使用 prop-types 库代替. defaultProps 用来确保 this.props.name 在父组件没有特 ...
- centos7 关闭防护墙
centos6 里面的默认防火墙 是 iptables, 所有 使用 service iptables stop 就可以停止防火墙了. 但是 centos7 里面的 防火墙 叫做 firewal ...
- Elastic Story(一)
关于_all 当索引一个文档的时候,Elasticsearch 取出所有字段的值拼接成一个大的字符串,作为 _all 字段进行索引.例如,当索引这个文档时: { "tweet": ...
- PE结构学习笔记--关于AddressOfEntryPoint位置在文件中怎么确定问题
第一次学习PE结构,也不知道有没有更好的办法. 1.AddressOfEntryPoint 这个成员在OptionalHeader里面,OptionalHeader的类型是一个IMAGE_OPTION ...
- 【设计模式】JDK源码中用到的设计模式
https://blog.csdn.net/angjunqiang/article/details/42061453 https://blog.csdn.net/baiye_xing/article/ ...