gpt4 book ai didi

php - MYSQL - 计算一个角度是否在两个角度之间

转载 作者:行者123 更新时间:2023-11-30 22:06:52 26 4
gpt4 key购买 nike

我正在尝试从数据库中选择所有点,只要我的角度在另外两个角度之间...我在 PHP 中有这段代码,效果很好:

public static function angle_between($value, $ang_a, $ang_b)
{
$n = (360 + ($value % 360)) % 360;
$a = (3600000 + $ang_a) % 360;
$b = (3600000 + $ang_b) % 360;

return ($a < $b) ? ($a <= $n && $n <= $b) : ($a <= $n || $n <= $b);
}

但是我如何在 SQL 中执行此操作?我当然在尝试这个

SELECT ... WHERE angle BETWEEN X AND Y 

但是我使用的是“角度公差”,这个例子在这种情况下当然不起作用:

angle = 355;
x = (angle - 10)
y = (angle + 10);

SELECT * FROM ... WHERE angle BETWEEN 345 AND 5

// 5° cause 355°+10° = 365° = 5°

当然不是介于两者之间,而是...

顺便说一句:angle_between(355, 345, 5);//真

最佳答案

您必须将范围分成两个范围,然后检查:

SELECT * FROM ... WHERE angle BETWEEN 345 AND 360
OR angle BETWEEN 0 AND 5;

关于php - MYSQL - 计算一个角度是否在两个角度之间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41412269/

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