本文主要给大家简单讲讲使用mysql 判断点在指定多边形区域内解析,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,直奔主题,希望可以给大家带来一些实际帮助。
1.创建测试表
CREATE TABLE `zone` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `polygongeo` polygon NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MYISAM DEFAULT CHARSET=utf8;
注意:空间索引只能在存储引擎为MYISAM的表中创建
insert into zone(polygongeo) values(POLYGONFROMTEXT('POLYGON((1 1,1 5,5 5,5 1,1 1))'));
测试 POINT(3, 4)
select AsText(polygongeo) from zone where MBRWithin(POLYGONFROMTEXT('POINT(3 4)'),polygongeo);
输出: POLYGON((1 1,1 5,5 5,5 1,1 1))
表示点 POINT(3, 4) 在多边形区域内
测试 POINT(6, 1)
select AsText(polygongeo) from zone where MBRWithin(POLYGONFROMTEXT('POINT(6 1)'),polygongeo);
输出: 空
表示点 POINT(6, 1) 在多边形区域外
总结:mysql空间查询并不很适合地图坐标,因此查询地图坐标可以使用mongodb实现,参考:《mongodb 判断坐标是否在指定多边形区域内的方法》
本文讲解了通过mysql 判断点是否在指定多边形区域内,更多相关内容请关注亿速云。
相关推荐:
如何调用php imagemagick来实现老照片效果
关于php 计算多个集合的笛卡尔积讲解
关于php文件包含目录配置open_basedir的使用与性能分析
使用mysql 判断点在指定多边形区域内解析就先给大家讲到这里,对于其它相关问题大家想要了解的可以持续关注我们的行业资讯。我们的板块内容每天都会捕捉一些行业新闻及专业知识分享给大家的。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。