mysql使用st_distance_sphere函数报错Incorrect arguments to st_distance_sphere

最近发现执行mysql st_distance_sphere报错了。

报错的信息是Incorrect arguments to st_distance_sphere。

最开始以为是跟mysql的版本有关系,所以看了下自己本地的mysql版本,执行一下sql

复制代码
select version();

发现自己本地的mysql版本是

5.7.30

这个版本是支持st_distance_sphere函数的。

但是,仍旧报错,后来考虑使用st_distance,st_distance函数执行是不会报错的。

查了下,st_distance_sphere是比st_distance相对更精确些,所以就抱着精确的心理,看看如何解决执行st_distance_sphere函数报错的问题。

最后,发现了原因,在处理数据将数据插入到mysql的脚本中

复制代码
`location` point NOT NULL

location的字段存储的point数据,没有按照要求存储,错误的存储成POINT(纬度 经度),正确的应该存储城经度在前,纬度在后,正确的格式数据如下图

其实英文原文的文档中也有对这个描述

SQL Error (1210): Incorrect arguments to st_distance_sphere

The geometry arguments should consist of points that specify (longitude, latitude) coordinate values: Longitude and latitude are the first and second coordinates of the point, respectively. Both coordinates are in degrees

相关推荐
麦聪聊数据4 分钟前
基于SQL+CDC构建MySQL到ClickHouse的实时链路
sql·mysql·clickhouse
IT大白8 分钟前
6、数据库优化
数据库·sql
努力学习的小廉11 分钟前
【QT(九)】—— 窗口
数据库·qt·系统架构
程序员敲代码吗12 分钟前
用Python监控系统日志并发送警报
jvm·数据库·python
m5655bj13 分钟前
使用 C# 将 Excel 表格转换为 DataTable
数据库·c#
丁丁点灯o17 分钟前
帆软指定某个列连续相同的数值合并单元格
数据库
DBA小马哥19 分钟前
文档型数据库MongoDB迁移替换至金仓数据库在电商商品信息存储中的应用
数据库·mongodb
世界尽头与你20 分钟前
CVE-2025-14847_ MongoDB 未授权内存泄露漏洞
数据库·安全·mongodb·网络安全·渗透测试
小北方城市网23 分钟前
Redis 缓存设计与避坑实战:解决穿透 / 击穿 / 雪崩
java·大数据·数据库·redis·python·elasticsearch·缓存
心态还需努力呀42 分钟前
从 Oracle 到 KingbaseES:一次真实项目的数据库国产化迁移实录
数据库·oracle