mysql 经纬度 矩形_SQL判断经纬度在矩形内
时间: 2023-11-04 12:05:50 浏览: 261
全国省市县数据+拼音+经纬度 ,输入地名查询经纬度,SQL源码.zip
5星 · 资源好评率100%
判断经纬度是否在矩形内可以使用MySQL中的Spatial数据类型和函数来处理。具体步骤如下:
1. 首先需要在创建表时,将经纬度存储在MySQL的Point类型中,例如:
```
CREATE TABLE `location` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`location` point NOT NULL,
PRIMARY KEY (`id`),
SPATIAL KEY `location` (`location`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
```
2. 然后可以使用MySQL中提供的ST_Contains函数来判断经纬度是否在矩形内,例如:
```
SELECT * FROM `location` WHERE ST_Contains(ST_PolygonFromText('POLYGON((lng1 lat1, lng2 lat2, lng3 lat3, lng4 lat4, lng1 lat1))'), `location`);
```
其中,lng1,lat1、lng2,lat2、lng3,lat3、lng4,lat4分别表示矩形四个顶点的经纬度,需要根据实际情况进行替换。如果查询结果不为空,则说明存在经纬度在该矩形内。
注意:在使用ST_Contains函数时,需要确保MySQL的版本支持Spatial数据类型和函数。
阅读全文