gpt4 book ai didi

mysql - 修改函数以调用/单步执行表

转载 作者:行者123 更新时间:2023-11-30 00:07:30 25 4
gpt4 key购买 nike

本月早些时候,我在一个问题中获得了一个函数,该函数返回给定两个经度和两个纬度点的方位:

DELIMITER $$

DROP FUNCTION IF EXISTS `initial_bearing`$$

CREATE FUNCTION `initial_bearing`(
lat1 DOUBLE, lon1 DOUBLE,
lat2 DOUBLE, lon2 DOUBLE
) RETURNS DOUBLE
NO SQL
DETERMINISTIC
COMMENT 'Returns the initial bearing, in degrees, to follow the great circle route
from point (lat1,lon1), to point (lat2,lon2)'
BEGIN

RETURN (360.0 +
DEGREES(ATAN2(
SIN(RADIANS(lon2-lon1))*COS(RADIANS(lat2)),
COS(RADIANS(lat1))*SIN(RADIANS(lat2))-SIN(RADIANS(lat1))*COS(RADIANS(lat2))*
COS(RADIANS(lon2-lon1))
))
) % 360.0;
END$$

DELIMITER ;

我如何修改它,以便它逐步遍历给定的表,并使用每个记录中的 MinLatitude、MaxLatitude、MinLongitude、MaxLongitude 代替函数中的变量,然后将输出、方位角返回到中的方位角字段相同的记录?

最佳答案

我误认为存储过程与存储函数的工作方式是我的错。事实上,这个过程工作得很好,只需要作为查询的一部分来调用,例如从表A 中选择initial_bearing (Lat1, Long1, Lat2, Long2)。我想我会保留这个以防其他初学者犯同样的错误。抱歉浪费了带宽。

关于mysql - 修改函数以调用/单步执行表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24396550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com