Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

mysql st_distance_sphere

作者:初吻被奶嘴夺走了   发布日期:2025-08-01   浏览:82

-- 使用 ST_Distance_Sphere 计算两个地理坐标点之间的距离(单位:米)

-- 创建一个包含地理坐标点的表
CREATE TABLE locations (
    id INT PRIMARY KEY,
    name VARCHAR(100),
    coord POINT
);

-- 插入一些示例数据
INSERT INTO locations (id, name, coord) VALUES
(1, 'Location A', ST_PointFromText('POINT(116.397428 39.916527)')), -- 北京
(2, 'Location B', ST_PointFromText('POINT(121.473701 31.230416)')); -- 上海

-- 查询两个地点之间的球面距离
SELECT 
    name AS from_location,
    (SELECT name FROM locations WHERE id = 2) AS to_location,
    ST_Distance_Sphere(coord, (SELECT coord FROM locations WHERE id = 2)) AS distance_in_meters
FROM 
    locations 
WHERE 
    id = 1;

-- 解释:
-- 1. `ST_PointFromText` 函数用于将 WKT (Well-Known Text) 格式的点转换为 MySQL 的几何类型。
-- 2. `ST_Distance_Sphere` 函数计算两个地理坐标点之间的球面距离,结果以米为单位。
-- 3. 在上面的例子中,我们计算了北京和上海之间的距离。

上一篇:mysql insert update

下一篇:mysql新增用户

大家都在看

mysqlavg函数保留小数

mysql显示表内容

mysql经纬度距离计算

存储过程mysql

mysql with语句

mysql时间加减

brew 启动mysql

unsigned在mysql中是什么意思

mysql 插入更新

mysql.user

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站