mysql 函数 实现 使用gcj02坐标系,筛选附近一公里的坐标
时间: 2024-12-02 11:15:32 浏览: 18
mysql常用坐标系转换函数.docx
在MySQL中,为了筛选出位于GCJ02坐标系下距离某个特定点一公里范围内的结果,你可以使用内置的地理空间函数,如`POINT`, `ST_Distance_Sphere`, 和 `ST_Within`。假设我们有一个包含经纬度字段(例如lon, lat)以及地点信息的表(名为locations),可以尝试以下查询:
```sql
SELECT * FROM locations
WHERE ST_DistanceSphere(
POINT(DecimalLongitude, DecimalLatitude), -- 替换为实际的GCJ02经度(DecimalLongitude)和纬度(DecimalLatitude)
POINT(`your_point_lon`, `your_point_lat`) -- 替换为你想筛选中心点的经度和纬度
) <= 1000; -- 1000米等于1公里,这里使用的是千米单位
注意:
1. `DecimalLongitude` 和 `DecimalLatitude` 是GCJ02坐标系下的经纬度,需要转换成浮点数表示。
2. MySQL的几何函数可能会有差异,如果你使用的是较旧版本,可能需要查看文档确认确切语法。
阅读全文