Py学习  »  DATABASE

如何防止由于第一个和最后一个坐标不等于而导致Mysql ST_PolygonFromText错误

Pamungkas Jayuda • 4 年前 • 819 次点击  

我有疑问:

SELECT ST_PolygonFromText(CONCAT('Polygon((',DATA_GPS,'))')) FROM TABLE_A CROS JOIN TABLE_B

显示错误: Data truncation: Invalid GIS data provided to function st_geometryfromtext.

第8行出错,因为第一个和最后一个gps不相等或不闭合多边形。 像这样显示: Polygon((107.15778031165127 -6.304745648974358 107.15945401007279 -6.304639009497479 107.15949692542361 -6.307624906559413))

如何查询排除不闭合多边形?

无论如何谢谢

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/50994
 
819 次点击  
文章 [ 1 ]  |  最新文章 4 年前
Rick James
Reply   •   1 楼
Rick James    5 年前

我认为“预防”需要发生 之前 处理 DATA_GPS 空间功能。但是,这可能在之后起作用:

建立 MultiLineString ,然后检查 IsClosed() . 如有必要,在末尾添加原始点。