我有一个带有POI的数据库表,我想连接到Geo表中的一个记录(包含城市、国家)。
我用的是Laravel 5/雄辩和Mysql。坐标以十进制(11,8)的形式存储。如果需要,我可以添加多个列。
如何检查POI是否位于这4坐标内?
发布于 2017-03-11 21:59:34
Mysql支持空间数据类型和函数,这些都是为了简化计算而设计的。
将POI定义为点,矩形定义为几何图形。使用包含()函数测试点是否位于矩形内:
select * from yourtable where st_contains(rectangle_field, point_field)
据我所知,Laravel并不直接支持这些daya类型和函数,因此您不得不求助于原始sql。
https://stackoverflow.com/questions/42740334
相似问题