如何解决MySQL函数等于DB2 / PostGIS函数“ ST_Intersection”是什么?
| 我正在DB2 / MysqL空间功能之间进行一些性能比较。但是,在将DB2空间查询转换成MysqL语言后,它抱怨语法错误(错误:函数交集不存在)。查询非常简单,如下所示:SELECT Area(Intersection(a.outline,b.outline) )/Area(Union( a.outline,b.outline)) AS area_ratio,distance(Centroid(b.outline),Centroid(a.outline) ) AS centroid_distance
FROM spatial_table1 A,spatial_table2 B ............
在查阅了文档之后,我发现在MysqL中没有实现精确的空间功能(交集,并集)。是这样吗 ?
是否有解决方法?
解决方法
MBRIntersects()
它不是100%相同,因为它会测试边界矩形是否相交,但是它很接近。
MySQL文件:http://dev.mysql.com/tech-resources/articles/4.1/gis-with-mysql.html
MySQL中的几何函数:http://dev.mysql.com/doc/refman/5.0/en/geometry-property-functions.html
请注意,只有MyISAM表支持空间索引。
UDF用于GIS,对您的问题没有帮助,抱歉:
MySQL UDF在球上的距离:http://www.lenzg.net/archives/220-New-UDF-for-MySQL-5.1-provides-GIS-functions-distance_sphere-and-distance_spheroid.html
适用于UTM功能的MySQL UDF:http://www.mysqludf.org/lib_mysqludf_fPROJ4/index.php
, 有一个开发快照,其中包含“ Holyfoot”实现的精确空间功能。这是5.1.35快照。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。